Airflow 운영 상의 어려움

  1. 라이브러리 충돌

  2. Worker의 부족

  3. 낮은 Server Utilization 이슈

    1. Airflow 전용 하드웨어를 지정했는데 서버들이 항상 바쁘지 않다면?

    2. 서비스별로 전용 서버를 할당하는 것은 여러가지로 이슈를 만들어냄

      1. 서비스별로 Capacity 관리를 해야함
        • 각 서버가 필요할 만큼 on demand 형식으로 리소스를 가져다 씀
      2. 각 서비스에 속한 서버들은 보면 utilization이 낮은 이슈 발생
    3. 이 역시 K8s와 같은 컨테이너 기술의 도입으로 해결 가능

      스크린샷 2023-06-12 오후 3.58.05.png

해결책

  1. 태스크나 DAG 코드를 Docker Image로 만들어서 Docker Container 형태로 실행
  2. Airflow Worker를 K8s에서 필요한 대로 동적으로 할당하여 사용

<aside> 💡 Airflow에서 이를 해결하는 방법은 3가지

잠깐! Airflow Executor는 무엇?

Kubernetes를 이용한 효율적인 데이터 엔지니어링(Airflow on Kubernetes VS Airflow Kubernetes Executor) - 1

스크린샷 2023-08-22 오후 8.37.21.png