더북(TheBook)

업데이트 실패 시 파드 복구하기

업데이트할 때 실수로 잘못된 버전을 입력하면 어떻게 될까요? 잘못된 않은 컨테이너 버전을 입력하고 어떻게 되는지 확인해 보겠습니다.

1. set image 명령으로 nginx 컨테이너 버전을 의도(1.17.2)와 다르게 1.17.23으로 입력합니다.

[root@m-k8s ~]# kubectl set image deployment rollout-nginx nginx=nginx:1.17.23 --record
deployment.apps/rollout-nginx image updated

2. 하지만 이번에는 한참을 쉬고 돌아와도 파드가 삭제되지 않고 pending(대기 중) 상태에서 넘어가지 않습니다. 이제부터 그 이유를 살펴보겠습니다.

[root@m-k8s ~]# kubectl get pods \
-o=custom-columns=NAME:.metadata.name,IP:.status.podIP,STATUS:.status.phase,NODE:.spec.nodeName
NAME                             IP               STATUS    NODE
rollout-nginx-7598b44f45-cp9kk   172.16.132.10    Running   w3-k8s
rollout-nginx-7598b44f45-nscgk   172.16.103.144   Running   w2-k8s
rollout-nginx-7598b44f45-w6swb   172.16.221.142   Running   w1-k8s
rollout-nginx-7759875c65-wghcd   172.16.103.149   Pending  w2-k8s
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.