본문 바로가기
따배쿠

[따배쿠] 9-4. kubernetes Canary Deployment

by Engineer-Lee 2022. 11. 16.
반응형

블루: 올드 버전

그린: 뉴 버전

 

파드를 배포하는 방법

블루 그린 업데이트 - 블루version 내리고 그린version 올리는 방법
카나리 업데이트 - 올드 버전 사이에 뉴 버전 하나 넣어서 모니터링하면서 배포하는 방법
롤링 업데이트 - 파드를 하나씩 하나씩 뉴 버전으로 업데이트하는 방법

 

 

 

 

mainui-stable.yaml 파일의 내용은 아래와 같다.

 

 

kubectl create -f mainui-stable.yaml 로 파드를 실행해보자

stable 버전의 파드가 실행되는 걸 볼 수 있다.

 

mainui-service.yaml 파일의 내용은 아래와 같다.

이는 app가 mainui인 파드들을 하나의 단일 진입점으로 묶기위한 파일이다.

 

kubectl create -f mainui-service.yaml 로 단일 진입점을 만들어 실행해보자

 

 

이번에는 카나리 버전으로 업데이트하기 위한 카나리 버전 파드의 파일인 mainui-canary.yaml을 보자

 

kubectl create -f mainui-canary.yaml 로 카나리버전을 실행한다.

그럼 3개의 파드가 단일진입점에 연결되었고 curl 명령으로 접속했을때 문제가 없다면 카나리 버전을 늘리고

문제가 있다면 카나리 버전을 제거 후 수정해서 배포하면 된다,

 

카나리 테스트가 충분히 끝나면

kubectl scale deployment mainui-canary --replicas=2 로 카나리 버전을 2개로 늘리고

kubectl delete deployments.apps mainui-stable로 stable 버전의 배포는 제거한다.

반응형