Sobes.tech
Middle+
93
questionbank

Какой у вас опыт применения бюджета на нарушение работы подов (Pod Disruption Budget)?

Answer from AI

sobes.tech AI

Использовал PDB для обеспечения минимального количества доступных реплик приложений во время добровольных прерываний, таких как обновления узлов или масштабирование кластера. Настраивал PDB как в манифестах развертываний, так и в отдельных объектах PDB, указывая minAvailable (абсолютное или процентное значение) или maxUnavailable.

Примеры использования:

  • Гарантия доступности n реплик StatefulSet во время обновлений.
  • Защита критичных Deployment от одновременного удаления всех подов при эвакуации узлов.
  • В сочетании с Cluster Autoscaler и Horizontal Pod Autoscaler для более контролируемого масштабирования и обновления.

Например, для обеспечения доступности минимум 80% подов Deployment:

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

Этот PDB предотвратит добровольное прерывание, если число доступных подов упадет ниже 80% от желаемого количества реплик. Это помогает поддерживать стабильность и доступность сервисов во время операций обслуживания кластера.