Solution Architect/Kubernetes

[Kubernetes] Deployment 롤링 업데이트

leehi9817 2023. 5. 31. 11:28

Rolling Update

Deployment의 업데이트 방법 중 하나로, Pod를 하나씩 점진적으로 교체하는 방법

  • 따로 설정을 하지 않을 때 기본적으로 적용되는 방식
  • V1을 V2로 업데이트 할 때, V2를 하나 생성한 뒤 V1을 삭제하는 방식으로 Pod를 하나씩 점진적으로 교체
  • 무중단 배포가 가능하다는 장점
  • V1과 V2의 Pod가 공존하는 순간이 있음
# kubectl set image deployment.apps/nginx-deployment nginx-deployment-container=leehi9817/web-site:aws
# kubectl get all
# kubectl rollout history deployment nginx-deployment
# kubectl rollout history deployment nginx-deployment --revision=2 # 리비전2 상세보기
# kubectl rollout undo deployment nginx-deployment # 롤백(전 단계로 복원)
# kubectl get all
# kubectl rollout history deployment nginx-deployment
# kubectl rollout history deployment nginx-deployment --revision=3 # 리비전3 상세보기
# kubectl rollout undo deployment nginx-deployment --to-revision=2 # 리비전2로 복원