컬리, Airflow 운영 환경 Kubernetes로 전환… 비용 50% 절감 및 안정성 확보
핵심 내용
컬리가 Airflow 운영 환경을 Kubernetes로 전환해 비용을 50% 절감하고 GitSync 및 OOM 문제를 해결했다.
자세히 보기
컬리 데이터서비스개발팀이 데이터 파이프라인용 Apache Airflow를 관리형 서비스에서 Kubernetes(K8S) 환경으로 이관하고 안정적 운영에 성공했다. 이번 전환은 기술 성숙도 향상과 직접적인 문제 해결을 통한 인프라 역량 강화, 그리고 비용 절감을 목표로 진행되었다.
주요 운영 이슈와 해결 과정
전환 과정에서 GitSync 사용 시 Scheduler의 CPU 과부하와 Worker의 OOM(Out of Memory) 문제가 발생했다. GitSync로 인한 CPU 과부하는 신규 및 개발용 Airflow가 동일한 Git 저장소를 동기화하면서 발생했으며, min_file_process_interval 조정과 직렬화 부하 분석을 통해 해결했다. CPU 사용량은 0.4 core에서 2.7 core로 증가했으나 적절한 파라미터 조정으로 안정화했다.
OOM 문제는 K8S의 3단계(OOM, Kubelet, OS) 메커니즘을 분석하여 대응했다. 컨테이너 레벨의 Request/Limit 설정과 Taint & Tolerations를 활용한 노드 격리를 통해 자원 경합을 방지하고 장애 대응 속도를 높였다. 또한, BigQuery 지연과 Concurrency 상한선 도달로 인한 로그 소실 문제는 Worker 수를 1대에서 2대로 Scale-out하여 병목을 해소했다.
성과 및 시사점
관리형 서비스의 고정 비용 대비 K8S 노드 사용으로 운영 비용이 약 50% 절감되었다. 직접 관리 환경으로의 전환을 통해 Airflow와 K8S에 대한 기술 역량을 강화했으며, 모니터링 고도화 등 안정성 확보 작업을 병행했다. 시행착오를 통한 실전 경험이 인프라 성장의 핵심 동력임을 확인했다.
이 한국어 요약은 AI가 자동으로 만들었습니다. 원문의 주장과 맥락은 원문에서 확인해 주세요. 저작권은 원저작자에게 있습니다.