Helm은 Kubernetes 애플리케이션을 배포하고 관리하기 위한 가장 강력한 도구 중 하나입니다.
Kubernetes 리소스를 선언하기 위해 필요한 복잡한 YAML 파일을 관리하고, 이를 쉽게 재사용할 수 있게 해줍니다.
이 글에서는 Helm Chart를 YAML 파일로 변환하는 방법을 단계별로 설명합니다.
Helm Chart란 무엇인가?
Helm Chart는 Kubernetes 애플리케이션 배포를 위한 설정 파일들의 집합입니다. Chart에는 Kubernetes에서 실행할 리소스 정의가 담긴 템플릿 파일들이 포함되어 있으며, 이를 통해 다양한 환경에서 동일한 애플리케이션을 쉽게 배포할 수 있습니다.
샘플 핸즈온
본 글에서는 Prometheus를 이용합니다.
Helm Repo 설정
# Add to Repo
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
# Check Repo List
helm repo list
# Repo update
helm repo update
# Check Chart List
helm search repo
# Pull Chart
helm pull prometheus-community/prometheus --untar
cd ./prometheus
Yaml로 변환
helm template prometheus . --namespace monitoring > prometheus.yaml
이렇게하면, 구성요소가 정리된 yaml파일로 추출이 가능합니다.
제약사항
단, 일부 오픈소스는 위와 같은 방법보다 좀 더 복잡한 과정이 필요하니 꼭 추가 검증이 필요합니다.
Helm Chart를 YAML로 변환하는 이유
Yaml로 변환하는 것은 여러 이유로 유용할 수 있습니다:디버깅: 생성된 Kubernetes 리소스 파일을 직접 확인하여 배포 문제를 파악할 수 있습니다.배포 제어: Helm 없이도 YAML 파일만으로 배포를 제어할 수 있습니다.버전 관리: 특정 배포 시점의 YAML 파일을 Git 등에서 버전 관리할 수 있습니다.