NAME READY STATUS RESTARTS AGE nginx-deployment-58b9b8ff79-dzfnj 1/1 Running 0 4s nginx-deployment-58b9b8ff79-p56jb 1/1 Running 0 4s nginx-deployment-58b9b8ff79-wlwq4 1/1 Running 0 4s
1 2
vim deploy.yml # image: nginx:1.21.0
1 2 3
kubectl apply -f deploy.yml
kubectl get pods
1 2 3 4 5 6
NAME READY STATUS RESTARTS AGE nginx-deployment-58b9b8ff79-dzfnj 1/1 Running 0 55s nginx-deployment-58b9b8ff79-p56jb 1/1 Running 0 55s nginx-deployment-58b9b8ff79-wlwq4 1/1 Terminating 0 55s nginx-deployment-6c4ccd94bc-4fz95 1/1 Running 0 3s nginx-deployment-6c4ccd94bc-5r8wb 0/1 ContainerCreating 0 1s
1 2
# 稍等一会后 kubectl get pods
1 2 3 4
NAME READY STATUS RESTARTS AGE nginx-deployment-6c4ccd94bc-4fz95 1/1 Running 0 30s nginx-deployment-6c4ccd94bc-5r8wb 1/1 Running 0 28s nginx-deployment-6c4ccd94bc-qdjxp 1/1 Running 0 32s
1
kubectl describe deployment nginx-deployment
1 2 3 4 5 6 7 8 9 10
Events: Type Reason Age From Message ---- ------ ---- ---- ------- Normal ScalingReplicaSet 2m11s deployment-controller Scaled up replica set nginx-deployment-58b9b8ff79 to 3 Normal ScalingReplicaSet 79s deployment-controller Scaled up replica set nginx-deployment-6c4ccd94bc to 1 Normal ScalingReplicaSet 77s deployment-controller Scaled down replica set nginx-deployment-58b9b8ff79 to 2 Normal ScalingReplicaSet 77s deployment-controller Scaled up replica set nginx-deployment-6c4ccd94bc to 2 Normal ScalingReplicaSet 75s deployment-controller Scaled down replica set nginx-deployment-58b9b8ff79 to 1 Normal ScalingReplicaSet 75s deployment-controller Scaled up replica set nginx-deployment-6c4ccd94bc to 3 Normal ScalingReplicaSet 73s deployment-controller Scaled down replica set nginx-deployment-58b9b8ff79 to 0
上述新旧replica set中的Pod交替升级的过程 就是滚动更新
回滚更新
服务更新出错时如何回滚?
1 2
vim deploy.yml # image: nginx:1.121.0 => 错误的镜像名称
1 2 3
kubectl apply -f deploy.yml
kubectl get pods
1 2 3 4 5
NAME READY STATUS RESTARTS AGE nginx-deployment-6c4ccd94bc-4fz95 1/1 Running 0 94m nginx-deployment-6c4ccd94bc-5r8wb 1/1 Running 0 94m nginx-deployment-6c4ccd94bc-qdjxp 1/1 Running 0 94m nginx-deployment-7964764c96-drvjx 0/1 ImagePullBackOff 0 85s
1 2 3 4 5 6
kubectl rollout history deployment/nginx-deployment
kubectl rollout history deployment/nginx-deployment --revision=3 # Image: nginx:1.121.0