本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 PDB 保護關鍵工作負載
Pod 中斷預算 (PDB) 是維護叢集中應用程式高可用性的基本功能。PDB 會指定目標大小,這是特定類型 Pod 的最低可用性。這表示特定 Pod 類型的複本數目下限必須在任何指定時間執行。如果執行中的複本數量低於目標大小,Kubernetes 會防止對剩餘複本的進一步中斷,直到達到目標大小為止。PDBs有助於確保工作負載不受這些事件影響,並可繼續不間斷地執行。發生中斷時,Kubernetes 會嘗試從受影響的節點正常移出 Pod,同時維持 PDB 中指定的複本數量。
您可以使用 PDB 宣告複本的 minAvailable
和 maxUnavailable
數目。例如,如果您希望至少有三個應用程式副本可供使用,請建立類似下列範例的 PDB:
apiVersion: policy/v1beta1 kind: PodDisruptionBudget metadata: name: my-svc-pdb spec: minAvailable: 3 selector: matchLabels: app: my-svc
為您的應用程式正確設定 PDBs,有助於將計劃或非計劃事件期間的中斷降至最低。您可以使用反親和性規則來排程不同節點上的部署 Pod,並避免節點升級期間的 PDB 延遲。