可以使用 kubectl rollout status 查看更新过程(要快,不然信息会只有一部分):
$ kubectl rollout status deploy nginx-deployWaiting for deployment "nginx-deploy" rollout to finish: 1 out of 2 new replicas have been updated...Waiting for deployment "nginx-deploy" rollout to finish: 1 out of 2 new replicas have been updated...Waiting for deployment "nginx-deploy" rollout to finish: 1 out of 2 new replicas have been updated...Waiting for deployment "nginx-deploy" rollout to finish: 1 old replicas are pending termination...Waiting for deployment "nginx-deploy" rollout to finish: 1 old replicas are pending termination...deployment "nginx-deploy" successfully rolled out
可以看出更新过程为新旧交替更新,首先新建一个 Pod,当 Pod 状态为 Running 时,删除一个旧的 Pod,同时创建一个新的 Pod。
$ kubectl describe deploy nginx-deployName: nginx-deployNamespace: defaultCreationTimestamp: Sun, 26 Nov 2023 10:32:16 +0800Labels: <none>Annotations: deployment.kubernetes.io/revision: 4Selector: app=nginxReplicas: 2 desired | 2 updated | 2 total | 2 available | 0 unavailableStrategyType: RollingUpdateMinReadySeconds: 0RollingUpdateStrategy: 25% max unavailable, 25% max surgePod Template: Labels: app=nginx Containers: nginx: Image: nginx:1.14.2 Port: 80/TCP Host Port: 0/TCP Limits: cpu: 500m memory: 128Mi Environment: <none> Mounts: <none> Volumes: <none>Conditions: Type Status Reason ---- ------ ------ Available True MinimumReplicasAvailable Progressing True NewReplicaSetAvailableOldReplicaSets: nginx-deploy-68c574c9f (0/0 replicas created), nginx-deploy-c86995cd6 (0/0 replicas created) NewReplicaSet: nginx-deploy-585ff57b46 (2/2 replicas created)Events: Type Reason Age From Message ---- ------ ---- ---- ------- Normal ScalingReplicaSet 42m deployment-controller Scaled up replica set nginx-deploy-585ff57b46 to 2
Normal ScalingReplicaSet 18m deployment-controller Scaled up replica set nginx-deploy-68c574c9f to 1
Normal ScalingReplicaSet 18m deployment-controller Scaled down replica set nginx-deploy-585ff57b46 to 1 from 2
Normal ScalingReplicaSet 18m deployment-controller Scaled up replica set nginx-deploy-68c574c9f to 2 from 1
Normal ScalingReplicaSet 17m deployment-controller Scaled down replica set nginx-deploy-585ff57b46 to 0 from 1