Study/K8S
[K8S - CKA] Rolling Updates ands Rollbacks
monitor
2023. 10. 28. 18:31
1. Rollout and Versioning
버저닝 : Revision을 하여 롤백을 할 수 있게 끔 설정을 도와줌
Rollout Command
k rollout status deployment/mydeploy #디플로이먼트 배포 중 상태를 볼 수 있음
k rollout history deployment/mydeploy #해당 디플로이먼트의 히스토리를 볼 수 있습니다. 어떤 버전을 썼는지
# 또는 언제 무슨 명령어로 배포가 되었는지 등등
Deployment 전략
Recreate 전략 : 아예 다 부수고 만드는 방법
Rolling Update 전략 : 하나 하나씩 버전을 pod 별로 내렸다가 하나씩 올리는 것 (기본 전략)
Blue Green 전략 : 이전 또는 지금 올릴 것을 Blue로 두고 이전 또는 지금 올릴 것을 Green으로 둘 다 배포 후 한 번에 Blue를 끄고 Green을 모두 배포해버림 (시간별로 다른 버전을 사용하게 되는 문제가 없다.)
Upgrades - RollingUpdate
업그레이드 시 새로운 ReplicaSet을 두고 천천히 한 Pod가 내려가면 새로운 Pod로 업데이트를 진행하게 됩니다.
Rollback - RollingUpdate
k rollout undo deployment/mydeploy
하나씩 파괴하고 이전의 셋을 불러오게 됩니다.
추가적으로 Deployment에는 spec. revisionHistoryLimit: 10 이렇게 지정해주면 롤백을 위한 ReplicaSet을 만들어 두게 된다.