Toby's Study Blog
article thumbnail
Published 2023. 8. 10. 16:37
Deployment kubernetes

현재 한 서비스가 운영중인데 이 서비스를 업데이트 하여야 되어 제 배포를 하여야 할때 도움을 주는 컨트롤러

1. ReCreate
Deployment를 만들면 v1의 파드들이 만들어지는데 이 방식으로 업그레이드를 하면 파드들을 삭제시킨다. (서비스에 대한 중단 발생) v2에 대한 파드 2개를 만들어준다

2. Rolling Update
업그레이드를 실행 시 v2의 파드를 우선 하나 만들어줌 (자원사용량 증가)
하나씩 지우고 하나씩 늘리고 하는 방식이며 무중단이 되지 않는 장점이 있음

3. Blue/Green
Controller을 만들어서 파드가 생성이 되면 파드에는 라벨이 있기 떄문에
서비스에 있는 샐랙터와 연결이 된다.
이렇게 운영이 되고 있는 상태에서 v2 버전에 대한 파드를 가지는 컨트롤러를 하나 더 만든다. (자원 및 비용 사용량은 2배가 된다.) 서비스에 있는 라벨만 v2로 변경을 해주면 기존 v1은 끊어지고 순간적으로 변경되어 무중단 이다. v2에 문제시 다시 v1으로 바꾸어주면 되어서 롤백이 쉽다.

4. Canary

'kubernetes' 카테고리의 다른 글

ConfigMap, Secret  (0) 2023.08.10
DemonSet, Job, CronJob  (0) 2023.08.10
Pod-Lifecycle  (0) 2023.08.10
Namespace, ResourceQuota, LimitRange  (0) 2023.08.10
Service  (0) 2023.08.10
profile

Toby's Study Blog

@Toby12

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!

검색 태그