Helm 치트 시트

Helm 치트 시트 (Cheat Sheet)

Helm으로 애플리케이션을 관리하는 데 필요한 모든 명령을 담은 치트 시트입니다.

출처: 문서

본문

Helm으로 애플리케이션을 관리하는 데 필요한 모든 명령을 모은 치트 시트입니다.


기본 해석/문맥 (Basic interpretations/context)

Chart (차트):

  • 풀(pull)되어 압축이 풀린 경우 자신의 차트 이름입니다.
  • 리포지토리가 추가됐지만 차트는 아직 pull 하지 않은 경우 <repo_name>/<chart_name> 입니다.
  • 차트의 URL/절대 경로입니다.

Name (이름):

  • 현재 helm 차트 설치에 부여하고 싶은 이름입니다.

Release (릴리스):

  • 설치 인스턴스에 부여한 이름입니다.

Revision (리비전):

  • Helm history 명령의 값입니다.

Repo-name:

  • 리포지토리의 이름입니다.

DIR:

  • 디렉터리 이름/경로

차트 관리 (Chart Management)

helm create <name>                      # 차트에 쓰이는 공통 파일과 디렉터리를 포함한 차트 디렉터리를 생성합니다.
helm package <chart-path>               # 차트를 버전이 매겨진 차트 아카이브 파일로 패키징합니다.
helm lint <chart>                       # 차트를 검사해 가능한 문제를 찾아내는 테스트를 실행합니다.
helm show all <chart>                   # 차트를 검사하고 내용을 나열합니다.
helm show values <chart>                # values.yaml 파일의 내용을 표시합니다.
helm pull <chart>                       # 차트를 다운로드/가져옵니다.
helm pull <chart> --untar=true          # true로 설정하면 다운로드 후 차트의 압축을 풉니다.
helm pull <chart> --verify              # 사용 전에 패키지를 검증합니다.
helm pull <chart> --version <number>    # 기본값은 latest입니다. 사용할 차트 버전에 대한 버전 제약을 지정합니다.
helm dependency list <chart>            # 차트의 의존성 목록을 표시합니다.

앱 설치 및 제거 (Install and Uninstall Apps)

helm install <name> <chart>                           # 이름으로 차트를 설치합니다.
helm install <name> <chart> --namespace <namespace>   # 특정 네임스페이스에 차트를 설치합니다.
helm install <name> <chart> --set key1=val1,key2=val2 # 명령줄에서 값을 설정합니다(여러 개 또는 쉼표로 구분해 지정할 수 있음).
helm install <name> <chart> --values <yaml-file/url>  # 지정한 값으로 차트를 설치합니다.
helm install <name> <chart> --dry-run --debug        # 차트를 검증하기 위한 테스트 설치를 실행합니다.
helm install <name> <chart> --verify                  # 사용 전에 패키지를 검증합니다.
helm install <name> <chart> --dependency-update       # 차트를 설치하기 전에 누락된 의존성을 업데이트합니다.
helm install <name> <chart> --force-replace           # 교체를 통해 리소스 업데이트를 강제합니다.
helm uninstall <name>                                 # 현재(기본) 네임스페이스에서 릴리스를 제거합니다.
helm uninstall <release-name> --namespace <namespace> # 지정한 네임스페이스에서 릴리스를 제거합니다.

앱 업그레이드 및 롤백 (Perform App Upgrade and Rollback)

helm upgrade <release> <chart>                        # 릴리스를 업그레이드합니다.
helm upgrade <release> <chart> --rollback-on-failure  # 설정하면 업그레이드 실패 시 변경 내용을 롤백합니다.
helm upgrade <release> <chart> --dependency-update    # 차트를 설치하기 전에 누락된 의존성을 업데이트합니다.
helm upgrade <release> <chart> --version <version_number> # 사용할 차트 버전에 대한 버전 제약을 지정합니다.
helm upgrade <release> <chart> --values               # YAML 파일 또는 URL의 값을 지정합니다(여러 개 지정 가능).
helm upgrade <release> <chart> --set key1=val1,key2=val2 # 명령줄에서 값을 설정합니다(여러 개 또는 쉼표로 구분).
helm upgrade <release> <chart> --force-replace        # 교체를 통해 리소스 업데이트를 강제합니다.
helm rollback <release> <revision>                    # 릴리스를 특정 리비전으로 롤백합니다.
helm rollback <release> <revision> --cleanup-on-fail  # 롤백 실패 시 이 롤백에서 생성된 새 리소스 삭제를 허용합니다.

리포지토리 나열, 추가, 제거, 업데이트 (List, Add, Remove, and Update Repositories)

helm repo add <repo-name> <url>   # 인터넷에서 리포지토리를 추가합니다.
helm repo list                    # 추가된 차트 리포지토리를 나열합니다.
helm repo update                  # 차트 리포지토리에서 사용 가능한 차트 정보를 로컬로 업데이트합니다.
helm repo remove <repo_name>      # 하나 이상의 차트 리포지토리를 제거합니다.
helm repo index <DIR>             # 현재 디렉터리를 읽고 발견된 차트를 기반으로 인덱스 파일을 생성합니다.
helm repo index <DIR> --merge     # 생성된 인덱스를 기존 인덱스 파일과 병합합니다.
helm search repo <keyword>        # 차트에서 키워드를 리포지토리에서 검색합니다.
helm search hub <keyword>         # Artifact Hub 또는 자신의 hub 인스턴스에서 차트를 검색합니다.

Helm 릴리스 모니터링 (Helm Release monitoring)

helm list                       # 지정한 네임스페이스의 모든 릴리스를 나열합니다. 네임스페이스를 지정하지 않으면 현재 네임스페이스 컨텍스트를 사용합니다.
helm list --all                 # 필터 없이 모든 릴리스를 보여줍니다. -a 사용 가능.
helm list --all-namespaces      # 모든 네임스페이스의 릴리스를 나열합니다. -A 사용 가능.
helm list -l key1=value1,key2=value2 # 필터링할 선택자(레이블 쿼리)입니다. '=', '==', '!='를 지원합니다.
helm list --date                # 릴리스 날짜로 정렬합니다.
helm list --deployed            # 배포된 릴리스를 보여줍니다. 다른 것을 지정하지 않으면 자동으로 활성화됩니다.
helm list --pending             # 보류 중인 릴리스를 보여줍니다.
helm list --failed              # 실패한 릴리스를 보여줍니다.
helm list --uninstalled         # 제거된 릴리스를 보여줍니다('helm uninstall --keep-history'를 사용한 경우).
helm list --superseded          # 대체된 릴리스를 보여줍니다.
helm list -o yaml               # 지정한 형식으로 출력합니다. 허용 값: table, json, yaml (기본 table).
helm status <release>           # 지정한 이름의 릴리스 상태를 보여줍니다.
helm status <release> --revision <number>   # 설정하면 지정한 리비전의 릴리스 상태를 표시합니다.
helm history <release>          # 주어진 릴리스의 기록 리비전.
helm history <release> --show-rollback-revision # 각 롤백이 대상으로 한 리비전을 보여주는 ROLLBACK 열을 추가합니다.
helm env                        # Helm이 사용 중인 모든 환경 정보를 출력합니다.

릴리스 정보 다운로드 (Download Release Information)

helm get all <release>      # 주어진 릴리스의 노트, 훅, 제공된 값, 생성된 매니페스트 파일에 대한 사람이 읽을 수 있는 정보 모음.
helm get hooks <release>    # 주어진 릴리스의 훅을 다운로드합니다. 훅은 YAML로 형식화되고 YAML '---\n' 구분자로 구분됩니다.
helm get manifest <release> # 매니페스트는 이 릴리스의 차트에서 생성된 Kubernetes 리소스의 YAML 인코딩 표현입니다. 차트가 다른 차트에 의존하면 해당 리소스도 매니페스트에 포함됩니다.
helm get notes <release>    # 지정한 이름의 릴리스 차트가 제공하는 노트를 보여줍니다.
helm get values <release>   # 주어진 릴리스의 values 파일을 다운로드합니다. 출력 형식은 -o 사용.

플러그인 관리 (Plugin Management)

helm plugin install <path/url>      # 플러그인을 설치합니다.
helm plugin list                    # 설치된 모든 플러그인 목록을 봅니다.
helm plugin update <plugin>         # 플러그인을 업데이트합니다.
helm plugin uninstall <plugin>      # 플러그인을 제거합니다.

더 알아보기 (Learn more)