← 기술 목록으로

K8s · Airflow 데이터 수집 플랫폼 운영 & 장애 대응

데이터 수집 파이프라인을 Kubernetes 위 Airflow로 운영하며, 반복 장애를 근본 원인 분석으로 해소하고 안정성·가용성을 확보

기간2024–2026
소속래브라도랩스(LabradorLabs) · 데이터파트
역할데이터 엔지니어 · 인프라 운영
KubernetesApache AirflowKubernetesExecutorHelmGit-SyncPostgreSQLWireGuard

1배경

데이터 수집 파이프라인(크롤러/DAG)은 초기 Docker Compose 기반으로 단일 호스트에서 운영되어, 확장성·격리·복구성에 한계가 있었습니다. 수집 규모가 커지면서 Task 격리, DAG 형상 관리, 자원 분리가 필요해졌습니다.

2아키텍처

Git-Sync sidecar (DAG-as-Code)

Airflow (KubernetesExecutor on K8s)

Collection DAGs (Pod per crawler Task)

PostgreSQL (Metadata DB)

RAW data and DB backup

Monitoring (status and resources)

2024-08, Airflow 운영을 Docker Compose → Kubernetes Helm Chart 기반으로 전환했습니다. KubernetesExecutor로 Task마다 독립 Pod를 띄워 격리하고, Git-Sync 사이드카로 DAG를 코드로 동기화(DAG-as-Code)했으며, 메타데이터는 PostgreSQL로 분리했습니다.

나아가 컨트롤플레인·워커 노드, 스토리지 클래스·Ingress·cert-manager를 포함한 K8s 클러스터를 직접 운영하고, 하이브리드(WireGuard + NAT) 구성으로 클러스터를 확장·트러블슈팅했습니다.

3장애 대응 (근본 원인 분석)

운영 중 발생한 주요 장애를 직접 원인 분석하고 복구했습니다.

4정기 운영 & 임팩트

크롤러/DAG 일상 운영과 함께, 수집 RAW 데이터 및 DB 백업 경로를 관리했습니다.

안정성·가용성 확보 — 수집 파이프라인을 K8s 기반으로 격리·운영해 안정성과 가용성을 확보
근본 원인 해소 — 반복 장애를 일회성 복구가 아닌 근본 원인 분석으로 해소(고가용성 개선 포함)
DAG-as-Code — Git-Sync 기반 형상 관리로 DAG 배포·이력을 코드화

5역할

데이터 엔지니어 · 인프라 운영으로서 Airflow 플랫폼의 K8s 전환 → 클러스터 운영 → 장애 대응 → 안정화를 담당했습니다. 단순 복구에 그치지 않고 CrashLoopBackOff·DiskPressure·etcd 지연 같은 문제를 근본 원인까지 추적해 고가용성을 개선했습니다.

관련: 같은 시기 데이터파트의 DB 플랫폼 고도화(업그레이드·아키텍처 분리)는 별도 항목으로 정리.