/
13. Helm

13. Helm


1. Helm

  • Kubernetes 애플리케이션의 패키지 매니저로 애플리케이션을 정의, 설치 및 업그레이드 가능합니다.

  • 애플리케이션을 패키지 형태로 배포하고 관리하기 쉽게 만들어 줍니다.

  • Helm을 사용하여 애플리케이션을 배포하면 일관성과 재사용성을 높일 수 있습니다.

  • 복잡한 쿠버네티스 리소스를 효율적으로 관리할 수 있습니다.

 

1.1 Helm 구성 요소

(1) 차트(Chart): Helm에서 애플리케이션을 패키징한 형태로, Kubernetes 리소스 템플릿과 값 파일을 포함합니다. 차트는 애플리케이션의 모든 구성 요소와 그 관계를 정의합니다.

(2) 릴리즈(Release): 특정 차트를 Kubernetes 클러스터에 설치한 인스턴스를 의미합니다. 동일한 차트를 여러 번 설치하여 여러 릴리즈를 만들 수 있습니다.

(3) 레포지토리(Repository): 차트를 저장하고 공유하는 장소입니다. 공개된 레포지토리를 통해 다양한 차트를 다운로드할 수 있으며, 자체 레포지토리를 만들어 내부적으로 사용할 수도 있습니다.

(4) 값 파일(Values File): 차트에서 사용할 변수 값을 정의한 파일입니다. 기본값 파일과 사용자 정의 값 파일을 통해 차트의 설정을 쉽게 변경할 수 있습니다.

 

1.2 Helm 주요 명령어

  • helm search: 차트를 검색합니다.

  • helm install: 차트를 설치하여 릴리즈를 만듭니다.

  • helm upgrade: 기존 릴리즈를 업그레이드합니다.

  • helm rollback: 릴리즈를 이전 버전으로 롤백합니다.

  • helm list: 설치된 릴리즈 목록을 표시합니다.

  • helm delete: 릴리즈를 삭제합니다.

 

 

1.3 Helm 설치

13/00-helm-install.txt

curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 chmod 700 get_helm.sh ./get_helm.sh

 

Helm 최신 버전(24.05.31)

wget https://get.helm.sh/helm-v3.15.1-linux-amd64.tar.gz tar xvf helm-v3.15.1-linux-amd64.tar.gz cd linux-amd64/ cp helm /usr/local/bin

 

 

1.4 Helm Chart 예제

1.4.1 Kube-prometheus-stack

  • 쿠버네티스 모니터링을 위한 커스텀된 Chart를 제공합니다.

13/01-kube-prometheus-stack.txt

  • Repo 추가

helm repo add prometheus-community https://prometheus-community.github.io/helm-charts helm repo update

 

  • 사용 가능한 차트 리스트 확인

 

  • 차트 다운로드

 

  • 차트 파일 확인

 

  • 설치

 

  • 접속을 위해 서비스타입을 변경합니다.

 

image-20240521-015740.png

 

Related content

12. 쿠버네티스 모니터링
12. 쿠버네티스 모니터링
Read with this
14. 애플리케이션 배포(CD)
14. 애플리케이션 배포(CD)
Read with this
13-1 Helm을 이용한 복잡한 APP 배포
13-1 Helm을 이용한 복잡한 APP 배포
Read with this
8. 쿠버네티스 리소스 관리 및 볼륨
8. 쿠버네티스 리소스 관리 및 볼륨
Read with this
1. 쿠버네티스 실습환경 구축
1. 쿠버네티스 실습환경 구축
Read with this