1. 概述
kubernetes滚动升级的过程:
- 集群Deployment 或者 Statefulset 发生变化,触发部署滚动升级;
- 根据 Deolyement 等配置,K8S集群首先启动新的POD来替代老 POD;
- Deployemnt 根据配置调度 POD,拉取镜像,此时 POD 进入 Pending 状态;
- POD 绑定到Node上,启动容器,在就绪检查readinessProbe 探针通过后,新的POD进入Ready状态;
- K8S集群创建Endpoint,将新的POD纳入Service 的负载均衡;
- K8S集群移除与老POD相关的Endpoint,并且将老POD状态设置为Terminating,此时将不会有新的请求到达老POD,同时调用PreStop Hook执行配置的脚本;
- K8S集群会给老POD发送SIGTERM信号,