시스템이 Helm 차트를 설치하려고 할 때 NSX Application Platform을 배포하지 못했습니다.
문제
시스템은
NSX Application Platform 배포 프로세스의 10%를 완료한 후 Helm 차트를 설치하려고 시도할 때 다음과 같은 오류 메시지를 표시했습니다.
NSX Application Platform deployment failed! See Troubleshooting Documentation. Helm install chart operation failed. Error: failed post-install: timed out waiting for the condition.
원인
프로세스에서 HTTPS 대신 HTTP를 사용하도록 구성된 Harbor 레지스트리에 액세스하려고 합니다.
해결책
- 운영 환경의 경우 인프라 관리자는 CA 서명 인증서를 가져와서 설치한 개인 Harbor 레지스트리에 대한 HTTPS 액세스를 구성해야 합니다. 자세한 내용은 Harbor에 대한 HTTPS 액세스 구성 웹 페이지를 참조하십시오.
- (선택 사항) (업스트림 Kubernetes 클러스터에 관해 이 단계를 주의해서 진행하십시오.) HTTPS 대신 HTTP를 사용하는 Harbor 레지스트리를 계속 사용하려면 인프라 관리자가 다음 정보를 해결 방법으로 사용해야 합니다. NSX Application Platform 배포에 사용하는 업스트림 Kubernetes 클러스터의 모든 제어 및 작업자 노드에 해결 방법을 적용해야 합니다.
- /etc/daemon.json 디렉토리에 있는 daemon.json 파일에 다음을 추가합니다.
{ "insecure-registries" : ["Harbor FQDN or Harbor IP"] }
- 다음 명령을 사용하여 Docker Engine을 다시 시작합니다.
systemctl restart docker
- /etc/daemon.json 디렉토리에 있는 daemon.json 파일에 다음을 추가합니다.
- (선택 사항) (감독자의 TKG 클러스터의 경우 주의해서 이 단계를 사용하십시오.) HTTPS 대신 HTTP를 사용하는 Harbor 레지스트리를 계속 사용하려면 인프라 관리자가 NSX Application Platform 배포에 사용하는 감독자의 TKG 클러스터의 모든 제어 및 worker 노드에 다음 해결 방법 정보를 적용해야 합니다.
- 암호를 사용하여 시스템 사용자 권한으로 Tanzu Kubernetes Cluster 노드에 SSH에 설명된 단계를 사용하여 각 Tanzu worker 노드에 로그인합니다
- 다음 명령을 사용하여 config.toml 파일을 편집합니다.
sudo vim /etc/containerd/config.toml
- Harbor 레지스트리에 대한 config.toml에 다음 항목을 추가합니다. 여기서 "10.222.44.111"은 예제 Harbor 레지스트리의 URL입니다.
[plugins.cri.registry] [plugins.cri.registry.mirrors] [plugins.cri.registry.mirrors."docker.io"] endpoint = ["https://registry-1.docker.io"] [plugins.cri.registry.mirrors."localhost:5000"] endpoint = ["http://localhost:5000"] [plugins.cri.registry.mirrors."10.222.44.111"] endpoint = ["http://10.222.44.111"]
- 다음 명령을 사용하여 Docker 클라이언트를 다시 시작합니다.
sudo systemctl restart docker