openstack-helm/doc/source/devref/pod-disruption-budgets.rst
Tin Lam fdfca4b0fb Fix handful of trivial items in docs
This fixes up typographical errors, capitalization issues and minor
stylistic formatting in the documentations.

Change-Id: I1951a90d48cc22e7f8c0516fc53f4018ef0a9a5d
Signed-off-by: Tin Lam <tin@irrational.io>
2018-05-25 19:26:03 -05:00

26 lines
1.3 KiB
ReStructuredText

Pod Disruption Budgets
----------------------
OpenStack-Helm leverages PodDistruptionBudgets to enforce quotas
that ensure that a certain number of replicas of a pod are available
at any given time. This is particularly important in the case when a Kubernetes
node needs to be drained.
These quotas are configurable by modifying the ``minAvailable`` field
within each PodDistruptionBudget manifest, which is conveniently mapped
to a templated variable inside the ``values.yaml`` file.
The ``min_available`` within each service's ``values.yaml`` file can be
represented by either a whole number, such as ``1``, or a percentage,
such as ``80%``. For example, when deploying 5 replicas of a pod (such as
keystone-api), using ``min_available: 3`` would enforce policy to ensure at
least 3 replicas were running, whereas using ``min_available: 80%`` would ensure
that 4 replicas of that pod are running.
**Note:** The values defined in a PodDisruptionBudget may
conflict with other values that have been provided if an operator chooses to
leverage Rolling Updates for deployments. In the case where an
operator defines a ``maxUnavailable`` and ``maxSurge`` within an update strategy
that is higher than a ``minAvailable`` within a pod disruption budget,
a scenario may occur where pods fail to be evicted from a deployment.