Helm은 Kubernetes의 패키지 관리자다. 복잡한 K8s 리소스를 Chart로 패키징해 설치·업그레이드·롤백을 간편하게 관리한다. K8s의 apt/npm과 같은 역할이다.
핵심 개념
| 개념 | 설명 |
|---|
| Chart | K8s 리소스를 묶은 패키지 |
| Release | 클러스터에 설치된 Chart 인스턴스 |
| Repository | Chart 저장소 |
| Values | 설치 시 커스터마이징하는 변수 |
기본 사용
bash
# 저장소 추가
helm repo add bitnami https://charts.bitnami.com/bitnami
helm repo update
# Chart 검색
helm search repo postgresql
# 설치
helm install my-postgres bitnami/postgresql --set auth.postgresPassword=mypassword --namespace db
# 업그레이드
helm upgrade my-postgres bitnami/postgresql --set global.postgresql.auth.postgresPassword=newpass
# 롤백
helm rollback my-postgres 1
# 목록 확인
helm list
Chart 구조
my-chart/
Chart.yaml # 메타데이터
values.yaml # 기본 변수
templates/
deployment.yaml # K8s 템플릿
service.yaml
ingress.yaml
관련 개념
- •Kubernetes — Helm의 대상 플랫폼
- •Docker — Helm Chart의 컨테이너
참고문헌
- •Helm 공식 문서: helm.sh/docs