簡體   English   中英

如何在 k8s 中錯開創建 pod

[英]how to stagger pod creation in k8s

我有一個關於滾動部署的快速問題。 我試圖確保 App Pod 的創建是交錯的。 我查看了maxSurgemaxUnavailable ,它們似乎是控制滾動部署的唯一設置。 這兩個設置都根據舊的副本集來討論 pod 創建。 我想確保即使當前沒有部署正在運行時 pod 的創建也是交錯的。

示例:如果我將maxSurge設置為 1 並將復制設置為 5,那么在存在舊部署的情況下,滾動更新策略將做正確的事情並一次啟動一個 pod,但如果沒有舊部署,所有 5 個 pod 將一起出現在一個新的部署中,這是我試圖避免的事情。

您所解釋的是在沒有現有部署的情況下的預期行為。 因此,您要進行有序部署-一個吊艙一個接一個。

嘗試將應用程序部署為有狀態集。 https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/

還請注意b / wa部署和有狀態集的差異,例如,在有狀態集的情況下不回滾https://blog.thecodeteam.com/2017/08/16/technical-dive-statefulsets-deployments-kubernetes/

您可以嘗試利用 HorizontalPodAutoscaler 和一個自定義指標,該指標可以設置為任何值,從而產生您想要的副本數。 然后只需配置您的 HPA,使其一次只能擴展這么多。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM