본문 바로가기

개발하자

helm의 '--dry-run' 옵션은 kubernetes API 서버에 연결이 필요한가? 면방향 연결 오류

반응형

helm의 '--dry-run' 옵션은 kubernetes API 서버에 연결이 필요한가? 면방향 연결 오류

옵션을 사용하여 개발 헬름채팅 배포 출력을 테스트하려고 합니다. 내가 아래 명령어를 실행하면 그것은 Kubernetes API 서버에 접속하려고 시도한다.

Kubernetes 클러스터를 연결하려면 Dry Run 옵션이 필요합니까? 배포 yaml 파일 출력을 확인하고 싶은 것 뿐입니다.

helm install mychart-0.1.0.tgz --dry-run --debug

Error: Get http://localhost:8080/api/v1/namespaces/kube-system/pods?labelSelector=app%3Dhelm%2Cname%3Dtiller: dial tcp [::1]:8080: connectex: No connection could be made because the target machine actively refused it.



에 기재된 바와 같이

템플릿 렌더링을 테스트하고 싶지만 실제로는 아무것도 설치하지 않으려면 helm install --debug --dry-run ./mychart를 사용하면 됩니다. 이렇게 하면 차트가 Tiller 서버로 전송되고 Tiller 서버는. 그러나 차트를 설치하는 대신 렌더링된 템플릿을 사용자에게 반환하여 출력을 볼 수 있습니다

따라서 템플릿을 올바른 값으로 렌더링하려면 Tiller에 연결해야 합니다. --dry-run 옵션을 사용할 때의 차이점은 차트를 실제로 설치하지 않는다는 것입니다.




생성된 YAMLs를 틸러에 연결할 필요 없이 렌더링하기 위해 실행할 수 있는 옵션도 있습니다. 그것과 결합하면 차트의 유효성을 확인할 수 있습니다.




와 명령 사이에는 약간의 차이가 있습니다:

  • 는 YAML 유효성 검사와 함께 매니페스트 파일을 K8S 사양과 대조하여 검증하고 렌더링하는 당신의 차트를 틸러로 보낼 것입니다.

  • 매니페스트를 생성하고 YAML 파일이 유효한지만 확인합니다. 그러나 생성된 매니페스트가 유효한 Kubernetes 리소스인지는 확인하지 않는다. 참조:

이게 도움이 되길 바래요!




사용하거나 대신 사용합니다.

i.


반응형