Balancing Cost and Reliability for Spark on Kubernetes
Author: Justin Lee (Notion) | Source: Notion Engineering Blog | Published: 2026-02-12
한 줄 요약
Notion이 AWS와 협력해 오픈소스 Spot Balancer를 개발하여 Spark on Kubernetes에서 Spot 인스턴스를 안전하게 활용, 비용을 최대 90% 절감하면서 안정성을 유지했다.
핵심 주장/내용
- EMR on EKS + Karpenter로 고정 EC2 인스턴스 대신 동적 노드 프로비저닝 전환
- MostAllocated 스케줄러로 동일 노드에 여러 잡의 executor를 bin-packing하여 리소스 효율 극대화
- Spot 인스턴스는 저렴하지만 단일 노드에 같은 잡의 executor가 몰리면 동시 종료로 잡 실패 위험 존재
- Spot Balancer: Kubernetes 웹훅으로 executor 생성을 인터셉트하여 잡별 Spot/온디맨드 비율을 제어
- 각 잡이
RELIABILITY_OVER_COST같은 named stability weight를 선언하여 트레이드오프 명시
주요 수치 / 사실
- Spot 인스턴스 비용 절감 최대 90%
- Notion의 Spark 워크로드 전반에 걸쳐 60-90% 비용 절감 달성
- 오픈소스 공개: https://github.com/aws-samples/sample-spot-balancer-spark-eks
관련 위키
Source: 원문 보기