Pod Disruption Budgets
The Pod Disruption Budget (pdb) limits the number of pods that are down simultaneously from voluntary disruptions. Refer to these links for information on disruptions and Pod Disruption Budgets.
A pdb is not required but may be desired if you are running 2 or more replicas of ACD and want to ensure a minimal availability when cluster maintenance (such as node replacement) is done. Be aware that if you have a minimum availability of 1 in a pod disruption budget and a deployment has a replica count of 1, the pod will never be moved by the scheduler and will cause voluntary maintenance such as replacing nodes to hang.
To use a pdb with ACD, create a Pod Disruption Budget object for each ACD deployment. The examples below can be used to do this.
Pod Disruption Budget Setup
Download the following example yaml and save it as acd-pdb.yaml locally. Edit the spec as desired.
kind: ListapiVersion: v1items:- apiVersion: policy/v1kind: PodDisruptionBudgetmetadata:name: merative-acd-acd-pdbspec:minAvailable: 1
Create the Pod Disruption Budgets.
oc project <acd_namespace>oc create -f acd-pdb.yaml
Check the status of the Pod Disruption Budgets.
oc get pdb
Get details of the Pod Disruption Budgets.
oc describe pdb
You can patch the Pod Disruption Budgets and change the spec using the file with an override such as this:
oc patch -f acd-pdb.yaml -p '{"spec":{"minAvailable":0}}'
If you no long want the Pod Disruption Budgets you can remove them using:
oc delete pdb -f acd-pdb.yaml