Helm
Helm
Kubernetes 애플리케이션을 패키지화하여 배포, 업그레이드, 롤백을 관리하는 패키지 매니저로, Chart라는 패키지 형식을 사용하며 템플릿 엔진을 통해 환경별로 다른 값을 주입하여 재사용 가능한 K8s 매니페스트 관리
특징: Go 템플릿 기반, Chart Repository를 통한 공유, Release 버전 관리, 롤백 지원, 의존성 관리
Chart 구조: Chart.yaml(차트 메타데이터 이름/버전), values.yaml(기본 설정값), templates/(K8s 매니페스트 템플릿 deployment.yaml/service.yaml/_helpers.tpl), charts/(의존성 차트)
핵심 개념: Chart(패키지), Release(차트의 특정 버전이 클러스터에 배포된 상태/이름/리비전 관리), values.yaml + 사용자 값 → 템플릿 렌더링
주요 명령어: helm repo add(차트 저장소 추가), helm search(차트 검색), helm install(차트 설치/Release 생성), helm upgrade(Release 업그레이드), helm rollback(이전 버전으로 롤백), helm uninstall(Release 삭제), helm list(설치된 Release 목록), helm template(템플릿 렌더링 미리보기)
비교: Helm(템플릿 엔진/Go 템플릿 문법/Chart로 패키지화/Helm Repository/복잡한 앱/재배포용) vs Kustomize(오버레이 패치/YAML 친숙하면 쉬움/디렉토리 구조/Git 주로/환경별 설정 차이)
연관: Kubernetes, GitOps, CI/CD, 패키지 관리