공부를 통해 배운 내용을 작성하고 있습니다. 혹여 해당 포스팅에서 잘못된 부분이 있을 경우, 알려주시면 빠르게 수정 조치하도록 하겠습니다.
이전 포스팅을 통해 Helm 에 대해서 알아보았다면, 이제 직접 실습을 해 보겠다.
(이전 포스팅 링크: https://eng-sohee.tistory.com/161)
목차
1. Helm 설치
2. Helm 레포지토리 추가
3. values가 정의된 yaml 작성
4. Airflow Helm Chart 설치
나는 해당 레포지토리를 참고하여 helm chart를 빌드해보겠다.
위 링크에서 언급된 User-Community Airflow Helm Chart 는 airflow 를 배포하는 표준 방법이라고 한다.
우선 레포 내 명시된 스타트 가이드를 참고하여, 빌드를 해보겠다.
1. Helm 설치
Helm 을 각자의 환경에 설치한다.
가이드는 해당 링크와 같다.
https://helm.sh/ko/docs/intro/install/
(나는 기존에 설치를 했으므로 이 부분은 패스 하겠다.)
2. Helm 레포지토리 추가
나의 helm 레포지토리에 airflow chart를 추가한다.
helm repo add airflow-stable https://airflow-helm.github.io/charts
helm repo update
그리고 잘 repo에 저장이 되었다면, 아래와 같이 확인할 수 있다.
helm repo list
# output
NAME URL
apache-airflow https://airflow.apache.org
3. values가 정의된 yaml 작성
이제, 이 chart 에 부여할 values 를 custom-values.yaml(이름은 'values.yaml' 등으로 다르게 해도 무관)이라는 파일명에 정의한다.
여기서 정의할 수 있는 value는 1000개 이상으로 매우 많다. 매우 복잡하다. 따라서, 아래 세 개 중 하나의 샘플 Executer Value.yaml 을 참고하여 하나씩 채우는 것이 좋다고 안내되고 있다.
(다음 포스팅에서, 내가 value.yaml 를 어떻게 정의했는지에 대해서 포스팅하겠다.)
4. Airflow Helm Chart 설치
install 에 필요한 환경변수를 아래와 같이 export 하고, install 한다.
export AIRFLOW_NAME="airflow-cluster"
export AIRFLOW_NAMESPACE="airflow-cluster"
## create the namespace
kubectl create ns "$AIRFLOW_NAMESPACE"
## install
helm install \
"$AIRFLOW_NAME" \
airflow-stable/airflow \
--namespace "$AIRFLOW_NAMESPACE" \
--version "8.X.X" \
--values ./custom-values.yaml
helm install 부분을 살펴보자.
- helm install "$AIRFLOW_NAME" : 우리가 지정한 대상 이름(위에서 환경변수로 airflow-cluster 라고 설정했으므로 airflow-cluster 를 설치한다는 의미)으로 helm 을 설치한다는 의미다.
- airflow-stable/airflow : 설치할 helm chart는, 이전에 레포지토리에 저장한 airflow-stable/airflow 차트를 쓴다는 의미다.
- --namespace "$AIRFLOW_NAMESPACE" : 우리가 지정한 네임스페이스(위에서 환경변수로 airflow-cluster 라고 설정했으므로 airflow-cluster 라는 네임스페이스를 의미)에 해당 helm 을 설치한다는 의미다.
- --version "8.X.X" : version 의 경우, chart 가 추후 예기치 않게 업데이트될 수 있음을 방지하고자, 8대 버전의 chart를 고정적으로 명시한다.
- --values ./custom-values.yaml : 이 helm 에 정의할 values 의 경우 해당 경로에 있는 custom-values.yaml 파일을 사용한다는 의미다. 이렇게 명령을 할 경우에는, 3. values가 정의된 yaml 작성에서 작성한 파일의 이름이 custom-values.yaml 여야 한다. 만약 파일 이름이 다른 거라면, 다르게 커스텀해서 명령을 주면 된다.
이렇게 하면 설치가 끝이 난다! 짝짝.
실제로 스터디를 했을 때, 내가 정의한 values.yaml 파일에 대해서, 다음 포스팅에서 작성해보도록 하겠다.
'데이터 공부 > Apache Airflow' 카테고리의 다른 글
Airflow를 helm으로 배포해보기 - (2) (0) | 2023.04.08 |
---|---|
Airflow를 helm으로 배포해보기 - (1) 사이드카 패턴 (0) | 2023.03.12 |
Airflow Helm 배포 - Helm 과 Chart 를 알아보기 (0) | 2022.10.22 |
Docker airflow2 커스텀 이미지 빌드 과정 (0) | 2022.04.02 |
Apache Airflow 처음부터 빌드해보기 + 4 (0) | 2021.09.24 |