為了服務升級過程中提供可持續的不中斷的服務,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