Pinterest, Moka 플랫폼으로 데이터 처리 혁신: EKS 기반 인프라 구축 심층 분석
AWS EKS를 활용하여 Moka 플랫폼을 배포하고, Terraform 모듈을 통해 인프라를 관리함
Fluent Bit를 사용하여 Spark 애플리케이션 로그를 수집하고, Amazon S3에 저장하는 로깅 시스템 구축
Prometheus 및 OTEL을 활용하여 EKS 클러스터의 메트릭을 수집하고, Statsboard를 통해 시각화함
EKS 환경 구축: Terraform 모듈 활용
Pinterest는 EKS 클러스터 배포를 위해 Terraform을 사용하고, 재사용 가능한 모듈을 활용하여 인프라를 관리한다. 구체적으로, terraform-aws-common-eks 모듈을 통해 공통 리소스를 정의하고, terraform-aws-eks 모듈을 포크하여 EKS 클러스터 및 애드온을 생성한다. 따라서, 인프라 관리 효율성을 높이고, 배포 자동화를 구현한다.
Fluent Bit 기반 로깅 시스템 설계
Moka 플랫폼은 Fluent Bit를 사용하여 Spark 애플리케이션 로그를 수집하고, Amazon S3에 저장한다. 구체적으로, Fluent Bit는 DaemonSet 형태로 EKS 클러스터에 배포되어 각 노드의 로그를 수집한다. 따라서, 로그 관리 효율성을 높이고, 문제 해결 시간 단축을 가능하게 한다.
메트릭 수집 및 시각화: Prometheus vs OTEL
Pinterest는 Prometheus와 OTEL을 활용하여 EKS 클러스터의 메트릭을 수집하고, Statsboard를 통해 시각화한다. kubemetricsexporter를 사용하여 Prometheus 메트릭을 수집하고, OTEL 파이프라인을 통해 데이터를 처리한다. 반면, OTEL은 메트릭 수집 및 전처리에 집중하고, 유연한 확장성을 제공한다.