Apache Airflow의 AWS ECS Executor로 워크플로우 실행하기(1)

AWS ECS Executor로 에어플로우 작업을 실행하기(1)

Apache Airflow의 AWS ECS Executor로 워크플로우 실행하기

지난 포스팅에서는 에어플로우의 AWS Lambda Executor를 사용하여 워크로드를 서버리스 환경인 AWS Lambda에서 실행하는 방법을 알아보았습니다.

Lambda는 가볍고 빠른 확장이 장점이지만, ’15분’이라는 실행 시간 제한과 리소스 제약 때문에 무거운 배치 작업을 처리하기엔 어렵다는 단점이 있었습니다.

그래서 오늘은 그 대안이자, 대규모 데이터 처리에 최적화된 AWS ECS Executor를 소개하려 합니다. Lambda와 마찬가지로 인프라 관리 부담은 덜면서도, 강력한 컴퓨팅 자원을 마음껏 활용할 수 있는 방법에 대해 알아보겠습니다.

 

 

1. AWS ECS Executor란?

AWS ECS Executor는 Airflow의 개별 태스크를 AWS ECS(Elastic Container Service)의 컨테이너로 실행하는 방식입니다.

일반적으로 Fargate와 결합하여 사용하는데, 태스크가 스케줄링되면 Airflow가 ECS API를 호출해 독립적인 컨테이너를 띄우고 작업을 수행합니다. 작업이 완료되면 컨테이너는 자동으로 종료됩니다. 즉, “필요할 때만 컨테이너를 빌려 쓰고 반납하는” 서버리스 워커 모델이라고 이해하시면 쉽습니다.

Airflow – AWS ECS Executor Documentation

 

 

2. 아키텍처 이해하기

ECS Executor의 동작 원리는 다음과 같습니다.

Scheduler: 실행해야 할 태스크를 감지하고 ECS API에 작업을 요청합니다.
AWS ECS (Fargate): 요청을 받은 ECS는 즉시 새로운 태스크 컨테이너를 프로비저닝합니다.
Task Execution: 컨테이너 내부에서 Airflow 명령이 실행되어 실제 로직이 작동합니다.
Metadata DB: 작업 상태(성공/실패)를 Airflow 메타데이터 DB에 업데이트합니다.
Termination: 작업 완료 후 컨테이너가 자동으로 삭제됩니다.

 

 

3. AwsLambdaExecutor vs. AwsEcsExecutor

비교 항목AWS Lambda ExecutorAWS ECS Executor (Fargate)
최대 실행 시간15분 제한 (가장 큰 제약)제한 없음 (장시간 배치 가능)
리소스 (CPU/RAM)최대 10GB RAM / 제한적 CPU훨씬 높은 사양 설정 가능 (대규모 연산)
기동 속도밀리초(ms) 단위 (매우 빠름)수십 초 ~ 수 분 (컨테이너 로딩 시간 필요)
비용 모델밀리초 단위 과금 (가벼운 작업에 유리)초 단위 과금 (무거운 작업에 유리)
적합한 케이스API 호출, 가벼운 파일 변환, 웹훅대용량 ETL, 머신러닝 학습, 복잡한 데이터 분석

Apache Airflow AWS Lambda Executor로 워크플로우 실행하기(1)

Lambda Executor는 “작고 수많은 작업을 순식간에 처리“할 때 유리하고,
ECS Executor는 “무겁고 오래 걸리는 작업“을 안정적으로 처리할 때 유리합니다.

 

 

4. 왜 ECS Executor인가?

가장 큰 이유는 제약 없는 자유도입니다. Lambda에서 겪었던 메모리 부족이나 시간 초과 오류에서 완전히 해방될 수 있습니다. 또한 Docker 이미지를 그대로 사용하기 때문에, 로컬에서 테스트한 환경을 프로덕션까지 그대로 이어갈 수 있다는 강력한 장점이 있습니다.

또한 ECS Executor는 Fargate를 사용함으로써 작업이 실행되는동안만 과금이 되며 작업이 없을 경우 비용이 들지 않으므로 비용 효율이 높습니다.

또한 어떠한 작업도 다른 작업에 간섭을 일으키지 않고 CPU, 메모리와 같은 리소스는 각 직업에 개별적으로 격리되어 특정 작업의 컨테이너가 다른 작업에 일절 영향을 끼치지 않습니다.

 

 

 

이번 포스팅에서는 AWS ECS Executor에 대해 간단히 소개드렸습니다.

이어지는 다음 포스팅에서는 실제로 에어플로우 내에서 어떻게 AWS ECS Executor를 사용할 수 있는지에 대해 자세히 다뤄보겠습니다.

Popular & Related Posts

GA4 데이터 스트림(Data Stream) 심층가이드 | 플러스제로

Google Analytics

2025년 1월

GA4 데이터 스트림 심층 가이드

웹부터 앱까지 모든 사용자 활동을 한눈에 파악하고 싶다면? GA4 데이터 스트림의 강력한 통합 분석 기능으로 더 깊은 인사이트를 얻고, 성공적인 마케팅 전략을 펼쳐보세요.
GA4 계층 구조 이해하기 - 계정, 속성, 데이터 스트림

Google Analytics

2025년 1월

GA4 계층 구조 이해하기

GA4 계층 구조의 계정(Account), 속성(Property), 데이터 스트림(Data Stream)을 이해고, 비즈니스와 분석 목표에 따라 GA4를 설정해보세요!
GEWRITER 서비스 소개 - AI 요약 시대의 SEO & GEO

GEO, SEO

2025년 9월

GEWRITER 서비스 소개 – AI 시대의 SEO & GEO

플러스제로의 GEWRITER는 AI로 인한 변화 속에서 브랜드가 보이지 않게 되는 리스크를 막고, 오히려 새로운 기회를 창출할 수 있도록 돕는 SEO & GEO 통합 솔루션입니다.