
공식 문서 기준으로 헬름은
“쿠버네티스 애플리케이션을 정의·설치·업그레이드하는 패키지 매니저”
이다.
쿠버네티스로 뭔가를 배포하려고 하면 보통:
Deployment, Service, ConfigMap, Secret, Ingress …
이런 YAML 파일이 최소 수십 개씩 생긴다.
이걸 직접 다 관리하면
헬름은 이걸 “차트(Chart)”라는 단위로 묶어서 관리한다.
결국 헬름을 쓰면:
이번 벨로그에서는 헬름을 “맛만 보는” 수준으로 이렇게만 다룬다.
MetalLB 도 헬름으로 설치할 수 있지만, 이미 Kustomize로 한 번 다뤘으니
여기서는 헬름 공식 예제에 나오는 NGINX 같은 간단한 것 위주로 할 것이다.
헬름은 그냥 바이너리 하나 다운받아서 PATH 에 두면 된다.
brew install helm
설치 확인:
helm version

이렇게 3.18.6버전이 성공적으로 설치된 것을 확인할 수 있다.
| 용어 | 의미 |
|---|---|
| Chart | 하나의 앱을 배포하기 위한 템플릿 묶음 |
| Release | Chart가 실제 클러스터에 설치된 “인스턴스” |
| Repository | Chart들을 모아둔 저장소 (예: bitnami, grafana) |
# 1) 리포지토리 추가
helm repo add <이름> <URL>
# 2) 리포지토리 목록 확인
helm repo list
# 3) 리포지토리 업데이트 (새 버전 차트 목록 받아오기)
helm repo update
# 4) 차트 검색
helm search repo nginx
# 5) 차트 설치
helm install <릴리스이름> <리포지토리/차트이름> [옵션]
# 6) 설치된 릴리스 목록
helm list -A # 전체 네임스페이스
# 7) 릴리스 상태 확인
helm status <릴리스이름>
# 8) 릴리스 업그레이드
helm upgrade <릴리스이름> <리포지토리/차트이름> -f values.yaml
# 9) 릴리스 롤백
helm rollback <릴리스이름> <리비전번호>
# 10) 삭제
helm uninstall <릴리스이름>
가장 간단하게 NGINX 웹 서버를 헬름으로 설치해본다.
여기서는 Bitnami 리포지토리를 예제로 쓴다.
helm repo add bitnami https://charts.bitnami.com/bitnami
helm repo update

추가되었는지 확인:
helm repo list

helm search repo nginx

여기서 bitnami/nginx 같은 항목이 보이는 것을 확인할 수 있다.
네임스페이스는 default 기준으로 설명한다.
helm install my-nginx bitnami/nginx
설치 후 확인:
helm list
helm status my-nginx
kubectl get pods,svc -l app.kubernetes.io/name=nginx


서비스 타입이 LoadBalancer 나 ClusterIP 로 잡힐 텐데,
환경에 따라 NodePort로 바꾸고 싶으면 values.yaml 을 쓰면 된다.
참고자료:
[헬름 공식 홈페이지 - Using Helm]
https://helm.sh/docs/intro/using_helm/