Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Info
title출처

https://docs.microsoft.com/ko-kr/learn/modules/aks-app-package-management-using-helm/2-what-is-helm

Helm

...

구성

Info


  • Charts
    yaml 파일을 묶어서 정의한 package입니다. kubernetes app 빌드를 위한 리소스가 정의되어 있습니다. 
  • Repository
    생성된 차트들의 저장소입니다.
  • Release
    kubernetes 클러스터에 로드된 chart instance들의 버전입니다. chart로 배포된 app들은 각각 고유한 버전을 갖고 있습니다. 


Helm Chart

Info
파일 / 폴더기술
Chart.yaml

차트에 대한 정보가 포함 된 YAML 파일입니다.

yaml 파일을 묶어서 정의한 package입니다. kubernetes app 빌드를 위한 리소스가 정의되어 있습니다. 

values.yaml차트의 기본 구성 값입니다.
templates/차트의 배포 템플릿이 포함 된 폴더입니다.
LICENSE차트에 대한 라이센스가 포함 된 일반 텍스트 파일입니다.
README.md차트 사용 방법에 대한 지침이 포함 된 마크 다운 파일입니다.
values.schema.json**values.yaml 파일에 구조를 적용하기위한 스키마 파일입니다.
charts/기본 차트에 대한 모든 하위 차트가 포함 된 폴더입니다.
crds/사용자 지정 리소스 정의.
templates/Notes.txt템플릿 사용 메모가 포함 된 텍스트 파일

Helm

...

Repository

Info

Image RemovedImage Added

Helm

...

Release

Info

Image RemovedImage Added

Helm은 차트를 어떻게 처리하나요?

Info

Helm 설치

Code Block
sansae@workspace-win10:/mnt/c/apps$ curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3
sansae@workspace-win10:/mnt/c/apps$ chmod 700 get_helm.sh
sansae@workspace-win10:/mnt/c/apps$ ./get_helm.sh
Downloading https://get.helm.sh/helm-v3.7.1-linux-amd64.tar.gz
Verifying checksum... Done.
Preparing to install helm into /usr/local/bin
[sudo] password for sansae:
helm installed into /usr/local/bin/helm
sansae@workspace-win10:/mnt/c/apps$
Code Block
sansae@workspace-win10:/mnt/c/apps$ helm version
version.BuildInfo{Version:"v3.7.1", GitCommit:"1d11fcb5d3f3bf00dbe6fe31b8412839a96b3dc4", GitTreeState:"clean", GoVersion:"go1.16.9"}

Helm 사용하기

  • Helm 차트를 사용하기 위해 차트 repository를 추가 합니다.

Code Block
sansae@workspace-win10:/mnt/c/apps$ helm repo add stable https://charts.helm.sh/stable
"stable" has been added to your repositories
  • 추가된 Repository를 확인 합니다.

Info

sansae@workspace-win10:/mnt/c/apps$ helm repo list
NAME URL
stable https://charts.helm.sh/stable
sansae@workspace-win10:/mnt/c/apps$

  • 추가된 Repository에 어떤 Charts가 있는지 확인 합니다.

Code Block
sansae@workspace-win10:/mnt/c/apps$ helm search repo stable
NAME                                    CHART VERSION   APP VERSION             DESCRIPTION
stable/acs-engine-autoscaler            2.2.2           2.1.1                   DEPRECATED Scales worker nodes within agent pools
stable/aerospike                        0.3.5           v4.5.0.5                DEPRECATED A Helm chart for Aerospike in Kubern...
stable/airflow                          7.13.3          1.10.12                 DEPRECATED - please use: https://github.com/air...
stable/ambassador                       5.3.2           0.86.1                  DEPRECATED A Helm chart for Datawire Ambassador
stable/anchore-engine                   1.7.0           0.7.3                   Anchore container analysis and policy evaluatio...
stable/apm-server                       2.1.7           7.0.0                   DEPRECATED The server receives data from the El...
stable/ark                              4.2.2           0.10.2                  DEPRECATED A Helm chart for ark
stable/artifactory                      7.3.2           6.1.0                   DEPRECATED Universal Repository Manager support...
stable/artifactory-ha                   0.4.2           6.2.0                   DEPRECATED Universal Repository Manager support...
~~~~~~~~~~ 생략 ~~~~~~~~~~~~
  • Helm Repository Update

Code Block
sansae@workspace-win10:/mnt/c/apps$ helm repo update
Hang tight while we grab the latest from your chart repositories...
...Successfully got an update from the "stable" chart repository
Update Complete. ⎈Happy Helming!⎈
sansae@workspace-win10:/mnt/c/apps$
  • Package 설치 하기

Code Block
$ kubectl create namespace db 
$ helm install postgresql-v1 stable/postgresql --namespace db 
$ helm status postgresql-v1
  • Upgrade & Rollback

Code Block
$ helm upgrade postgresql-v1 stable/postgresql --namespace db
$ helm history postgresql-v1 --namespace db
$ helm rollback postgresql-v1 1 --namespace db
  • Release 삭제하기

Code Block
$ helm uninstall postgresql-v1 --namespace db