k8s的deployment更新策略


1.滾動更新策略

滾動升級策略會允許集群存在新舊版本,可能會對應用存在服務訪問問題;

注意點:

Deployment控制器的滾動更新操作並非在同一個ReplicaSet控制器對象下刪除並創建Pod資源,而是將它們分置於兩個不同的控制器之下:舊控制器的Pod對象數量不斷減少的同時,新控制器的Pod對象數量不斷增加,直到舊控制器不再擁有Pod對象,而新控制器的副本數量變得完全符合期望值為止;
maxUnavailable:表示最大不可用pod數量,可以是整數或者百分比;
maxSurge:表示可超過預期值的pod數量,可以是整數或者百分比;
為了保存版本升級的歷史,需要在創建Deployment對象時於命令中使⽤“--record”選項。"kubectl apply -f myapp-deploy.yaml --record";
適用情況:一些無狀態應用,允許多個版本存在訪問,需要快速回滾;
 

2.重建策略

重建策略會在創建新策略之前刪除所有現有容器集,Kubernetes 先終止當前版本中的所有容器,然后在舊容器刪除時同時啟動所有新容器,不會有 2 種版本容器同時運行,這對服務使用者來說更簡單

一般建議在開發環境使用該策略;

3.藍綠發布(通過修改label,或者是結合istio)

4.金絲雀發布9(通過修改label,或者是結合istio)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM