Назад к вопросам
Middle+
81
questionbank

Что такое бюджет прерывания подов?

Sobes Copilot

Получайте ответы в реальном времени

Ответ от нейросети

sobes.tech AI

Бюджет прерывания подов (Pod Disruption Budget, PDB) — это механизм в Kubernetes, который позволяет гарантировать минимальное количество доступных реплик приложения во время добровольного прерывания (например, обновления нод) или контролируемого выключения.

PDB определяет либо минимальное количество или процент доступных подов (minAvailable), либо максимальное количество или процент недоступных подов (maxUnavailable). Kubernetes API уважает этот бюджет и не позволяет выполнять операции, которые привели бы к нарушению установленного лимита. К таким операциям относятся:

  • Удаление подов контроллерами (Deployment, StatefulSet и т. д.) при масштабировании вниз.
  • Удаление подов вручную командой kubectl drain для обслуживания ноды.

Он защищает только от добровольных прерываний, а не от принудительных (например, сбой ноды).

Пример PDB для Deployment my-app:

apiVersion: policy/v1
kind: PodDisruptionBudget
metadata:
  name: my-app-pdb
spec:
  minAvailable: 80%  # Минимум 80% подов должны оставаться доступными
  selector:
    matchLabels:
      app: my-app  # Выбирает поды с меткой app: my-app

В этом примере Kubernetes не позволит добровольным прерываниям сократить количество доступных подов с меткой app: my-app ниже 80% от их общего числа.