목록 보기
배포를 안전하게 - 카나리 배포, 롤백
데브옵스

배포를 안전하게 - 카나리 배포, 롤백

버즈빌
버즈빌
2022년 6월 21일

두줄요약

GitHub·Spinnaker·Helm 기반 Kubernetes 배포 흐름과 카나리 배포 구현을 소개했습니다.\nIstio 트래픽 분산과 커밋 SHA 기반 원클릭 롤백으로 배포 안전성을 높였습니다.

구조와 흐름

  • GitHub 푸시 이벤트 기반 커밋 SHA 태그의 Docker 이미지 빌드·저장
  • GitHub 배포 이벤트를 웹훅으로 수신한 Spinnaker 파이프라인의 Helm 배포
  • 공통 Helm 차트와 서비스별 values.yaml, --set 오버라이드 기반 매니페스트 생성

선택 이유

  • 커밋 SHA 기반 이미지 태그로 커밋별 이미지 식별과 배포 대상 확인
  • Istio VirtualService의 가중치 기반 메인·카나리 릴리즈 트래픽 분산
  • 버전별 Datadog 메트릭 비교를 통한 신규 버전 검증과 피해 반경 축소

성능/운영 포인트

  • 배포 시점 dynamic payload로 카나리 레플리카 수와 트래픽 비중 선택
  • 검증 후 전체 배포 또는 취소 결정, 카나리 트래픽 제거와 릴리즈 정리
  • 배포 히스토리의 커밋 SHA 재배포와 배포 Lock 기반 원클릭 롤백

주의할 점

  • 카나리 배포 미지원 Kubernetes 환경에서 Helm 차트와 Istio 설정의 별도 구현 필요
  • 이전 values.yaml까지 동일 커밋으로 지정해야 이전 매니페스트 재현 가능

다음 읽기

#AWS 주제를 이어서 읽기

배포를 안전하게 - 카나리 배포, 롤백

AWS EKS 기반 Kubernetes 환경의 배포 과정과 구현 방식을 소개합니다. 카나리 배포와 롤백으로 배포 안전성을 높이는 전략을 설명합니다.

버즈빌
버즈빌
데브옵스

댓글 0개

댓글을 작성하려면 로그인이 필요합니다.

댓글을 불러오는 중...