Sobes.tech
Middle+

Welche Erfahrung haben Sie mit der Anwendung des Pod Disruption Budget (PDB)?

sobes.tech KI

Antwort von AI

Ich habe PDB verwendet, um die minimale Anzahl an verfügbaren Replikaten der Anwendungen während freiwilliger Unterbrechungen wie Knotenaktualisierungen oder Cluster-Skalierungen sicherzustellen. Ich habe PDB sowohl in den Deployment-Manifests als auch in separaten PDB-Objekten konfiguriert, wobei ich minAvailable (absoluter Wert oder Prozentsatz) oder maxUnavailable angegeben habe.

Anwendungsbeispiele:

  • Gewährleistung der Verfügbarkeit von n Replikaten des StatefulSet während Updates.
  • Schutz kritischer Deployments vor gleichzeitiger Entfernung aller Pods bei Knotenausfällen.
  • In Kombination mit Cluster Autoscaler und Horizontal Pod Autoscaler für kontrollierteres Skalieren und Aktualisieren.

Zum Beispiel, um mindestens 80 % der Pods in einem Deployment verfügbar zu halten:

apiVersion: policy/v1beta1
kind: PodDisruptionBudget
metadata:
  name: my-app-pdb
spec:
  minAvailable: 80%
  selector:
    matchLabels:
      app: my-app

Dieses PDB verhindert freiwillige Unterbrechungen, wenn die Anzahl der verfügbaren Pods unter 80 % der gewünschten Replikate fällt. Es hilft, die Stabilität und Verfügbarkeit der Dienste während Wartungsarbeiten am Cluster aufrechtzuerhalten.