데이터 공부/Apache Airflow

Airflow Helm 배포 - Helm 과 Chart 를 알아보기

한소희DE 2022. 10. 22. 17:19

공부를 통해 배운 내용을 작성하고 있습니다. 혹여 해당 포스팅에서 잘못된 부분이 있을 경우, 알려주시면 빠르게 수정 조치하도록 하겠습니다.

 

 

Kubernetes 환경에서 Airflow를 운영할 때, 일반적으로 Helm 차트를 이용하여 배포 및 운영을 한다.

이유는, Airflow 에서 제공하는 공식 Helm 차트를 제공하기 때문이며, 이를 통해 특정 클라우드 제공 업체에 얽매이지 않고 Airflow를 운영할 수 있다.

 

Helm 의 장점

Helm 을 사용하면, 복잡한 쿠버네티스 기반의 애플리케이션을 쉽게 설치 가능하다.

설치뿐만 아니라, 업데이트도 간결하다. helm 차트로 하나로 묶여 있다 보니, 여러 리소스가 묶인 복잡한 소프트웨어를 동시에 관리하기 수월하여 관리가 쉽다.

 

Helm의 단점

하지만 Helm은 러닝커브가 있기 때문에, Helm 을 충분히 숙지하지 않은 상황이라면 운영이 어렵다는 단점이 있다.

복잡한 패키지를 풀다운해서, 사용자 정의에 맞게 정리하고 지정하는 작업에 대한 시간 소요가 있을 수 있다.

 

 

Chart 란

우선적으로 알아야 할 개념은 Chart 다.  Chart 란, Helm 의 리소스 패키지다. 단일 차트로도 복잡한 아키텍쳐의 배포를 가능하게 한다는 장점이 있다.

 

 


 

 

Airflow Helm Chart는 아래와 같은 특징이 있다.

(출처: https://airflow.apache.org/docs/helm-chart/stable/index.html)

  • 지원되는 Executor (Task 실행방식)
  • 지원되는 Airflow 버전
    • 1.10+,2.0+
  • 지원되는 데이터베이스
    • PostgresSQL, MySQL
  • 모니터링
    • StatsD/Prometheus 메트릭
    • Flower (CeleryExecutor에 default 로 제공하는 모니터링 UI)

 

 

이제 다음 포스팅에서 빌드를 해보자.