为了服务升级过程中提供可持续的不中断的服务,Kubernetes 提供了rolling update机制,具体配置需要修改对应服务的yaml文件
参数解析:
minReadySeconds: 100 # 容器启动创建多少s后服务可用
strategy:
# indicate which strategy we want for rolling update
type: RollingUpdate
rollingUpdate:
maxSurge: 1 # 升级过程中最多可以比原先设置多出的POD数量
maxUnavailable: 1 # 升级过程中最多有多少个POD处于无法提供服务的状态
replicas: 2 # 目的副本集个数
相关命令:
1、滚动升级
kubwx apply -f svc-zipkin.yaml --record
2、暂停升级
kubwx rollout pause deployment zipkin-server
3、继续升级
kubwx rollout resume deployment zipkin-server
4、查看升级历史
kubwx rollout history deployment zipkin-server
5、回滚操作
回滚到上一级
kubwx rollout undo deployment zipkin-server
回滚制定版本(根据rollout history的查看结果)
kubwx rollout undo deployment zipkin-server --to-revision=13