
36
AI 요약
이 글은 AI가 원문을 분석하여 핵심 내용을 요약한 것입니다.
Runway DB 인프라 구성 개선기
이 게시물은 Runway AI 플랫폼의 Kubernetes 환경에서 데이터베이스 인프라를 구축하고 고도화한 과정을 공유합니다.초기 구성과 문제점
- 초기에는 단일 PostgreSQL pod를 k8s.Deployment로 배포했으나, 이는 stateful 애플리케이션에 부적합
- 고가용성 요구에 대응하기 위해 bitnami/postgresql-ha Helm 차트를 이용한 PostgreSQL-HA 클러스터를 도입
- 복제와 장애 극복 기능을 갖췄으나, 복잡한 장애 시 Split Brain 문제 발생
대체 솔루션 검토 및 선택
- Split Brain 문제를 해결하기 위해 cloudnative-pg(cnpg), zalando/postgres-operator, CrunchyData/postgres-operator 중 검토
- 폐쇄망 환경 자동 복구와 높은 자동화 수준을 고려해 cloudnative-pg를 최종 선택
cloudnative-pg의 장애 대응
- Kubernetes API를 직접 사용하여 클러스터 상태 감지 및 자동 복구 수행
- failover 시 primary pod 상태 추적 후 새로운 leader 선출
- Split Brain 방지 및 Standby 서버 장애 시 데이터 동기화 방식 개선
적용 및 기대 효과
- 기존 bitnami/postgresql-ha의 한계 극복
- Runway 인프라의 안정성과 신뢰성 강화
- AI 플랫폼 인프라 안정성 향상을 위한 개선 과정 참고 가능