Middle+
137
Какой у вас опыт применения бюджета на нарушение работы подов (Pod Disruption Budget)?
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% от желаемого количества реплик. Это помогает поддерживать стабильность и доступность сервисов во время операций обслуживания кластера.