Configuring Istio HA by using autoscaling
Enable High Availability (HA) for the Istio control plane through autoscaling so that the mesh remains operational even when an istiod pod fails.
With autoscaling, you specify the minimum and maximum number of Istio control plane pods that may run at any time. Alauda Container Platform then scales the actual replica count between those bounds based on resource consumption — for example, CPU or memory utilization — so the control plane can absorb shifts in workload volume and traffic patterns within the mesh.
Prerequisites
- You are logged in to the Alauda Container Platform web console as a user with the
cluster-adminrole, or you have an active ACP CLI (kubectl) session as a cluster administrator. - The Alauda Service Mesh v2 Operator is installed.
- The
Istioresource has been deployed.
Configuring via the web console
Procedure
-
In the Alauda Container Platform web console, navigate to Administrator.
-
Select Marketplace > OperatorHub.
-
Search for the
Alauda Service Mesh v2. -
Locate the
Alauda Service Mesh v2and click to select it. -
Click the All Instances tab.
-
From the Filter by instance type dropdown, select
Istio. -
Click the name of the Istio installation, for example
default. -
Click the YAML tab.
-
Update the
Istiocustom resource (CR) so it resembles the following example:spec.values.pilot.autoscaleMinsets the minimum number of Istio control plane replicas that are always running. To meet HA requirements, this value must be at least2.spec.values.pilot.autoscaleMaxsets the maximum number of Istio control plane replicas the autoscaler can scale up to under load.spec.values.pilot.cpu.targetAverageUtilizationsets the target average CPU utilization as a percentage. When the observed CPU usage rises above this target, the Horizontal Pod Autoscaler (HPA) adds replicas.spec.values.pilot.memory.targetAverageUtilizationsets the target average memory utilization as a percentage. When the observed memory usage rises above this target, the HPA adds replicas.
Configuring via the CLI
Procedure
-
Retrieve the name of the
Istioresource:Example output
The
Istioresource is nameddefault. -
Patch the
Istiocustom resource (CR) to enable autoscaling for the control plane:For field explanations of these settings, see Configuring via the web console.
Verification
Check the status of the Istio control plane pods:
Example output
Two istiod pods are running. Two pods is the minimum required for an HA Istio control plane and indicates that a basic HA setup is in place.