롤링 업데이트(Rolling Update)란?
롤링 업데이트는 시스템 업데이트를 점진적으로 수행하는 방식으로, 서비스 중단을 최소화하고 리스크를 관리하는 데 유용합니다.
가. 롤링 업데이트의 특징
- 점진적 배포: 업데이트가 일괄적으로 이루어지는 것이 아니라, 시스템의 일부분에만 순차적으로 적용됩니다.
- 서비스 중단 최소화: 업데이트 중에도 시스템의 나머지 부분이 정상 작동하여 서비스 중단 시간을 최소화합니다.
- 위험 감소: 전체 시스템에 대한 업데이트가 아니므로, 문제 발생 시 영향을 제한하고 빠른 대응이 가능합니다.
나. 롤링 업데이트의 과정
- 준비 단계: 새 버전의 애플리케이션을 준비하고, 업데이트를 위한 계획을 세웁니다.
- 부분적 배포: 시스템의 일부 인스턴스에만 새 버전을 배포합니다.
- 모니터링 및 검증: 새 버전이 정상적으로 작동하는지 모니터링하고 검증합니다.
- 순차적 업데이트: 나머지 인스턴스에도 점차적으로 업데이트를 진행합니다.
다. 롤링 업데이트 종류
- 기본 롤링 업데이트: 시스템의 인스턴스를 하나씩 순차적으로 업데이트합니다.
- 블루/그린 배포: "블루" 버전과 "그린" 버전이 동시에 배포됩니다.
- 카나리 배포: 새 버전을 소수의 사용자에게만 처음 제공합니다.
- A/B 테스팅: 두 가지 버전을 다른 그룹의 사용자에게 제공합니다.
- 피처 플래그(Feature Flag): 새 기능을 코드에 포함시키되, 활성화/비활성화를 제어합니다.
라. 사용 사례
클라우드 서비스 및 마이크로서비스 아키텍처에서 자주 사용됩니다.
마. 주의사항
- 리소스 관리: 동시에 여러 버전의 애플리케이션이 실행되므로, 리소스 관리가 중요합니다.
- 호환성 확인: 새로운 버전이 기존 시스템과 호환되는지 사전에 확인해야 합니다.
'04. DevOps,CICD' 카테고리의 다른 글
ArgoCD vs Flux: 장단점과 사용 사례 (1) | 2024.01.23 |
---|---|
ArgoCD vs Spinnaker (0) | 2024.01.20 |
Gitops Overview (0) | 2024.01.18 |
DevOps vs GitOps (0) | 2024.01.18 |
DevSecOps의 주요 보안 요소 (0) | 2024.01.18 |