When draining Istio pods some nodes may not drain because they have a replica count of 1, while 3 or more replicas are required. In order to avoid this, you should set the minimum replica count for each property to at least 3.
When backing up and draining Istio nodes you may see errors like:
kubectl drain` failed to evict and reschedule pods to another node due to PodDisruptionBudget definitions: === NAMESPACE NAME MIN AVAILABLE MAX UNAVAILABLE ALLOWED DISRUPTIONS AGE istio-system istio-ingressgateway 1 N/A 2 5d11h istio-system istio-pilot 1 N/A 2 5d11h ===
For istio-ingressgateway
and istio-pilot
you can set the
istio.ingressgateway.replicaCountMin
and istio.pilot.replicaCountMin
properties to 3
or higher. See the
Configuration properties reference,
istio
.
For other istio
components (that don't have a replicaCountMin property), see
Manually
upgrading a cluster or node pool in the GKE documentation or
IstioOperator
Options in the Istio documentation.