오늘의 인기 글
최근 글
최근 댓글
Today
Total
05-09 00:00
관리 메뉴

우노

[Helm] Helm Chart --set 사용 방법 본문

DevOps/Helm

[Helm] Helm Chart --set 사용 방법

운호(Noah) 2023. 6. 16. 14:39

들어가기 앞서,

  • Helm Chart의 Values엔 암호화가 필요한 값이 들어가야할 때가 있습니다.
  • 따라서, 해당 포스팅에선 Helm Chart Values에 기본값을 박아두고,
  • helm install 또는 upgrade 시 암호화가 필요한 값을 사용자 입력을 통해 할당할 수 있는 방법에 대해서 다뤄보겠습니다.
  • Values 값 변경 시 사용할 수 있는 파라미터는 --set, --set-string, --set-file 이며,
  • 해당 포스팅에선 --set-string을 사용하겠습니다.
  • 또한, airflow helm chart를 예제로 들겠습니다.

예제 코드 1

  • airflow-stable-values.yaml

      airflow:
        config:
          TOKEN : "default"
  • helm install 실행 시 value 값 변경

      helm install airflow airflow-stable/airflow \
      -f airflow-stable-values.yaml \
      --set-string 'airflow.config.TOKEN=변경할토큰값'

예제 코드 2

  • airflow-stable-values.yaml

      extraManifests:
        - apiVersion: v1
          kind: Secret
          metadata:
            name: git-credentials
          data:
            GIT_SYNC_USERNAME : "ZGVmYXVsdA==" # default라는 문자열을 Base64 인코딩한 상태
            GIT_SYNC_PASSWORD : "ZGVmYXVsdA==" # default라는 문자열을 Base64 인코딩한 상태
  • helm install 실행 시 value 값 변경

      helm upgrade --install airflow airflow-stable/airflow \
      -f airflow-stable-values.yaml \
      --set-string 'extraManifests[0].data.GIT_SYNC_USERNAME=변경할BASE64인코딩값' \
      --set-string 'extraManifests[0].data.GIT_SYNC_PASSWORD=변경할BASE64인코딩값'

예제 코드

  • airflow-stable-values.yaml

      airflow:
        connections:
          - id: google_cloud_default
            type: google_cloud_platform
            description : GCP Connection
            extra: |
              {
                "extra__google_cloud_platform__project": "Userinputrequired",
                "extra__google_cloud_platform__num_retries": 5
              }
          - id: aws
            type: aws
            description : AWS Connection
            extra: |
              {
                "aws_access_key_id": "Userinputrequired",
                "aws_secret_access_key": "Userinputrequired",
                "region_name" : "Userinputrequired"
              }
  • helm install 실행 시 value 값 변경

      helm upgrade --install airflow airflow-stable/airflow \
      -f airflow-stable-values.yaml \
      --set-string 'airflow.connections[0].extra={"extra__google_cloud_platform__project": "Userinputrequired","extra__google_cloud_platform__num_retries": 5 }' \
      --set-string 'airflow.connections[1].extra={"aws_access_key_id": "Userinputrequired","aws_secret_access_key": "Userinputrequired","region_name": "Userinputrequired"}'

참고

'DevOps > Helm' 카테고리의 다른 글

[Helm] Helm Chart를 사용해 GKE에 Airflow 설치하기  (0) 2023.07.21
[Helm] Helm, Helm Chart란?  (1) 2023.05.24
Comments