From the comfort of AWS to the unknown of GCP and Back?! by Natalie Godec, Endy Kasanardjo
- AWS에서 GCP로의 복잡한 클라우드 마이그레이션과 하이브리드 운영 경험을 공유하며, 기술적 도전과 해결 과정을 상세히 설명합니다. 🔄
- 마이그레이션은 경영진의 요청과 기존 시스템의 복잡성(300개 이상 컴포넌트)에도 불구하고, 기술적 도전을 수용하는 자세로 시작되었습니다. 💡
- Kubernetes, PostgreSQL, Kafka 등 오픈소스 기반의 '잘 정비된' 플랫폼은 마이그레이션을 용이하게 했지만, 동시에 기존 시스템을 재구축하는 어려움도 따랐습니다. 🏗️
- 성공적인 마이그레이션을 위해 애플리케이션 배포 패턴, 서비스 의존성, 데이터 처리, DNS 관리의 네 가지 핵심 요소를 사전에 철저히 고려해야 했습니다. 📋
- 24/7 운영되는 광고 플랫폼의 특성상 '제로 다운타임' 마이그레이션이 필수적이었으며, 이는 데이터와 DNS 처리에서 특히 중요했습니다. ⚡
- Kubernetes의 롤아웃 재시작 기능은 마이그레이션 과정을 크게 단순화하는 핵심 기술로 활용되었습니다. ☸️
- 서비스를 '읽기 전용'과 '쓰기' 그룹으로 분리하여 단계적으로 마이그레이션하는 전략이 효과적이었으며, 읽기 전용 서비스는 비교적 쉽게 전환되었습니다. 📚
- Flux/Argo CD와 Customize 기반의 YAML 배포 패턴은 수백 개의 YAML 파일을 복사하고 재작성하는 상당한 수작업과 스크립트 자동화를 필요로 했습니다. 📝
- 마이그레이션 성공의 핵심은 '관측 가능성(Observability)' 확보였으며, 프로젝트 지연을 감수하고 요청률, 오류율 등 기능적 모니터링 시스템 구축에 집중했습니다. 📈
- GCP의 AlloyDB, Gateway API, Managed Prometheus와 같은 '관리형 서비스'들이 약속과 달리 기존 시스템과의 버전 불일치, 기능 부족 등으로 실제 적용에 난항을 겪었습니다. 📉
- 특히 Managed Prometheus는 기존 Prometheus 정의와 호환되지 않아 결국 자체 관리 방식으로 회귀하는 등, 클라우드 전문가들도 예상치 못한 문제에 직면했습니다. 🧑💻
- 클라우드 전문가들조차 약속된 솔루션이 작동하지 않을 때 이를 인정하고 대안을 찾는 과정에서 중요한 학습과 성장의 기회를 얻었습니다. 🌱
- Config Connector 및 로깅 방식 등 GCP의 새로운 기술 환경에 적응하는 과정에서 추가적인 도전과 학습이 필요했습니다. 🔗