7D64015F114058AAFCD083D192054DDA.jpg

Pod Disruption Budgets:POD中断预算方案
自愿中断:
- pod模板更改,如deployment的删除和修改
- pod直接删除
- drain操作等

Deployment中的maxUnavailable定义了滚动升级时最大更新数量
RS Controller定义了期望副本数量

意外中断:
- node资源不足,pod逐出
- node故障
- node不可用等

pdb只能使用minAvailable 或者Code之一
使用minAvailable

apiVersion: policy/v1beta1
kind: PodDisruptionBudget
metadata:
  name: zk-pdb
spec:
  minAvailable: 50% #在pod被驱离的情况下,必须保证的最小可用的pod数量,可以是个数或者百分比
  selector:
    matchLabels:
      app: zookeeper

使用maxUnavailable

apiVersion: policy/v1beta1
kind: PodDisruptionBudget
metadata:
  name: zk-pdb
spec:
  maxUnavailable: 25% #在pod被驱离的情况下,必须保证的最大不可用的pod数量,可以是个数或者百分比
  selector:
    matchLabels:
      app: zookeeper

查看PDB:

kubectl get poddisruptionbudgets

发表回复

您的电子邮箱地址不会被公开。

Captcha Code