Helm values.yaml 작성 가이드
Helm은 Kubernetes 패키지 매니저로, "차트(Chart)"라는 단위로 미리 작성된 매니페스트 템플릿을 받아 클러스터에 배포합니다. 사용자가 직접 작성하는 것은 보통 values.yaml 한 파일이며, 차트가 노출한 키만 오버라이드하면 됩니다. 본 빌더는 가장 많이 쓰이는 nginx·PostgreSQL·Redis(Bitnami) 차트의 핵심 키를 폼으로 받아 즉시 values.yaml을 만들어 줍니다.
핵심 키 구조
image.repository·image.tag: 사용할 컨테이너 이미지와 태그.service.type·service.port: ClusterIP/NodePort/LoadBalancer 노출 방식과 포트.persistence.enabled·persistence.size·persistence.storageClass: 영구 볼륨 사용 여부와 크기.resources.requests/resources.limits: CPU·메모리 예약/상한.replicaCount: Deployment 복제본 수.
Bitnami 차트 특징
Bitnami 차트는 운영에서 가장 많이 쓰이는 검증된 차트입니다. PostgreSQL은 auth.username·auth.password·auth.database로 초기 계정과 DB를 설정하고, Redis는 auth.password와 architecture: standalone|replication로 단일/마스터-슬레이브 구성을 선택할 수 있습니다. nginx는 serverBlocks에 직접 nginx config를 작성하거나 ConfigMap 참조를 넣어 커스터마이징합니다.
설치·업그레이드 명령
생성한 values.yaml로 차트를 배포하려면 차트 저장소를 추가한 뒤 helm install 또는 helm upgrade --install을 사용합니다.
helm repo add bitnami https://charts.bitnami.com/bitnamihelm repo updatehelm upgrade --install <release> bitnami/<chart> -n <ns> -f values.yaml --create-namespace
자주 묻는 질문 (FAQ)
Q. values.yaml의 우선순위는?
A. 차트에 포함된 기본 values → -f로 넘긴 파일 → --set 인자 순으로 덮어쓰기 됩니다. 본 빌더가 만든 파일은 -f 위치에 사용합니다.
Q. 빈 키를 지워도 되나요?
A. 차트 기본값이 적용되므로 명시할 필요 없으면 지워도 무방합니다. 본 빌더는 입력한 값만 출력합니다.
Q. 시크릿(비밀번호)는 어떻게 관리하나요?
A. values.yaml에 평문으로 두지 말고 existingSecret 키로 미리 만든 Kubernetes Secret을 참조하거나 SOPS/sealed-secrets 같은 도구를 함께 사용하세요.