피드로 돌아가기
Dev.toInfrastructure
원문 읽기
Spot VM 활용으로 컴퓨팅 비용 90% 절감 및 AI 워크로드 가용성 확보
Surviving the eviction: How to build interrupt-resilient AI workloads on GKE
AI 요약
Context
비용 절감을 위해 GKE Spot VM 기반의 AI 학습 환경을 구축했으나, Google Cloud의 자원 회수에 따른 노드 소멸로 인한 데이터 손실 위험 존재. Ephemeral Compute의 특성상 예기치 못한 중단이 발생하므로, 실패를 전제로 한 아키텍처 설계가 필수적인 상황.
Technical Solution
- SIGTERM 신호 트래핑을 통한 Graceful Shutdown 구현으로 현재 루프 종료 및 메모리 데이터의 디스크 Flush 처리
- GCS(Google Cloud Storage) 기반의 External Checkpointing 도입으로 모델 가중치 및 상태 정보를 외부 저장소에 주기적으로 동기화
- DB UPSERT 연산 기반의 Idempotency 설계를 통해 중복 처리 발생 시에도 데이터 일관성을 유지하는 구조 확보
- Pub/Sub 메시지 브로커를 활용한 Work Queue 분리로 작업 단위의 원자성을 확보하고 ACK 기반의 재처리 메커니즘 구현
- GCS 버킷과 GKE 클러스터를 동일 리전에 배치하여 데이터 전송 지연 시간 최소화 및 네트워크 비용 절감
실천 포인트
- [ ] 컨테이너 내 SIGTERM 핸들러 구현 및 15초 이내의 상태 저장 로직 검토 - [ ] GCS 등 외부 스토리지로의 체크포인트 저장 주기 및 복구 스크립트 유효성 확인 - [ ] DB 쓰기 작업 시 Unique ID 기반의 UPSERT 쿼리 적용 여부 검토 - [ ] 대규모 배치 처리 시 단일 스크립트 방식에서 메시지 큐 기반의 분산 처리 구조로 전환