Installing Alauda Service Mesh
Installing Alauda Service Mesh consists four major parts:
- Installing the Alauda Service Mesh v2 Operator
- Deploying the Istio CNI plugin
- Deploying the Istio control plane
Do not install Alauda Service Mesh and Alauda Service Mesh v2 in the same Kubernetes cluster, as this may result in functional conflicts.
Migration guide will be available in a future release.
TOC
Deploying Istio with the Alauda Service Mesh v2 OperatorInstalling the Alauda Service Mesh v2 OperatorInstalling via the web consoleInstalling via the CLICustom Resource Definitions Installed by the OperatorDeploying Istio ComponentsCreating the namespace for IstioCNICreating theIstioCNI resourceCreating via the web consoleCreating via the CLICreating the namespace for IstioCreating the Istio ResourceCreating via the web consoleCreating via the CLIAdditional resourcesDeploying Istio with the Alauda Service Mesh v2 Operator
To deploy Istio using Alauda Service Mesh v2 Operator, Istio resource is required to be created.
The Operator then creates an IstioRevision resources, representing a distinct revision of the Istio control plane.
The Istio control plane is subsequently deployed based on these IstioRevision resources.
If the update strategy of the Istio resource is set to RevisionBased, the Operator may create additional IstioRevision resources to manage control plane upgrades.
Installing the Alauda Service Mesh v2 Operator
Installing via the web console
Prerequisites
- The Alauda Service Mesh v2 must be uploaded.
- You are logged in to the Alauda Container Platform web console as cluster-admin.
- The Alauda Container Platform Networking for Multus plugin must be installed, and kube-ovn must be v4.1.5 or later.
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 v2, and click to select it.
- Click Install.
- On the Install Alauda Service Mesh v2 dialogue, perform the following steps:
- Select an Channel
- Choose the stable channel to install the latest stable version of the Alauda Service Mesh v2 Operator. It is the default channel for installing the Operator.
- To install a specific version of the Alauda Service Mesh v2 Operator, choose the corresponding
stable-<version>channel. For example, to install the Alauda Service Mesh v2 Operator version 2.0.x, use the stable-2.0 channel.
- Select an Channel
- Click Install and Confirm to install the Operator.
Verification
Verify that the Operator installation status is reported as Succeeded in the Installation Info section.
Installing via the CLI
Prerequisites
- The Alauda Service Mesh v2 must be uploaded.
- An active ACP CLI (
kubectl) session by a cluster administrator with thecluster-adminrole. - The Alauda Container Platform Networking for Multus plugin must be installed, and kube-ovn must be v4.1.5 or later.
Procedure
-
Check available versions
Example output
Fields:
- CHANNEL: Operator channel name
- NAME: CSV resource name
- VERSION: Operator version
-
Confirm catalogSource
Example output
This indicates the
servicemesh-operator2comes from theplatformcatalogSource. -
Create a namespace
-
Create a Subscription
Field explanations
- annotation
cpaas.io/target-namespaces: It is recommended to set this to empty; empty indicates cluster-wide installation. - .metadata.name: Subscription name (DNS-compliant, max 253 characters).
- .metadata.namespace: Namespace where the Operator will be installed.
- .spec.channel: Subscribed Operator channel.
- .spec.installPlanApproval: Approval strategy (
ManualorAutomatic). Here,Manualrequires manual approval for install/upgrade. - .spec.source: Operator catalogSource.
- .spec.sourceNamespace: Must be set to cpaas-system because all catalogSources provided by the platform are located in this namespace.
- .spec.startingCSV: Specifies the version to install for Manual approval; defaults to the latest in the channel if empty. Not required for Automatic.
- annotation
-
Check Subscription status
Key output
- .status.state:
UpgradePendingindicates the Operator is awaiting installation or upgrade. - Condition InstallPlanPending = True: Waiting for manual approval.
- .status.currentCSV: Latest subscribed CSV.
- .status.installPlanRef: Associated InstallPlan; must be approved before installation proceeds.
Wait for the
InstallPlanPendingcondition to beTrue: - .status.state:
-
Approve InstallPlan
Example output
Approve manually
Verification
Wait for CSV creation; Phase changes to Succeeded:
Check CSV status:
Example output
Fields
- NAME: Installed CSV name
- DISPLAY: Operator display name
- VERSION: Operator version
- REPLACES: CSV replaced during upgrade
- PHASE: Installation status (
Succeededindicates success)
Custom Resource Definitions Installed by the Operator
The Operator installs the following categories of Custom Resource Definitions (CRDs):
-
Sail Operator CRDs: These CRDs belong to the
sailoperator.ioAPI group and define custom resources for managing Istio components, includingIstio,IstioRevision,IstioCNI, andZTunnel. Refer to the Sail Operator API reference for details. -
Istio CRDs: These CRDs manage mesh configuration, service discovery, traffic routing, and observability. They belong to the
istio.ioAPI groups such asnetworking.istio.io,security.istio.io, andtelemetry.istio.io. See the Istio documentation for configuration guidance.
Deploying Istio Components
Both Istio and IstioCNI custom resources must be created to deploy the control plane and the Istio CNI plugin.
It's required to create these Istio and IstioCNI resources in separate namespaces.
Creating the namespace for IstioCNI
Creating the IstioCNI resource
Creating via the web console
Create an Istio Container Network Interface (CNI) resource, which contains the configuration file for the Istio CNI plugin. The Alauda Service Mesh v2 Operator uses this resource's configuration to deploy the CNI pod.
Prerequisites
- You are logged in to the Alauda Container Platform web console as cluster-admin.
- The Alauda Service Mesh v2 Operator must be installed.
- The Alauda Container Platform Networking for Multus plugin must be installed, and kube-ovn must be v4.1.5 or later.
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 v2, and click to select it.
- Click All Instances tab.
- Click Create.
- Locate and Select IstioCNI and then click Create.
- Select the
istio-cnifrom the Namespace drop down. - Click YAML tab.
- Add the following YAML snippet to the YAML code editor:
- Click Create.
Verification
Wait until the .status.state field of the IstioCNI resource to be Healthy.
Creating via the CLI
Prerequisites
- An active ACP CLI (
kubectl) session by a cluster administrator with thecluster-adminrole. - The Alauda Service Mesh v2 Operator must be installed.
- The Alauda Container Platform Networking for Multus plugin must be installed, and kube-ovn must be v4.1.5 or later.
Procedure
-
Create the IstioCNI resource by running the following command:
-
Wait for the IstioCNI resource to return the
Readystatus condition by running the following command:
Creating the namespace for Istio
Creating the Istio Resource
Creating via the web console
Create the Istio resource that will contain the YAML configuration for your Istio deployment.
The Alauda Service Mesh v2 Operator leverages this resource's configuration to deploy the Istio Control Plane.
Prerequisites
- The Alauda Service Mesh v2 Operator must be installed.
- You are logged in to the Alauda Container Platform web console as cluster-admin.
- The Alauda Container Platform Networking for Multus plugin must be installed, and kube-ovn must be v4.1.5 or later.
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 v2, and click to select it.
- Click All Instances tab.
- Click Create.
- Locate and Select Istio and then click Create.
- Select the
istio-systemfrom the Namespace drop down. - Click Create.
Verification
Wait until the .status.state field of the Istio resource to be Healthy.
Creating via the CLI
Prerequisites
- An active ACP CLI (
kubectl) session by a cluster administrator with thecluster-adminrole. - The Alauda Service Mesh v2 Operator must be installed.
- The Alauda Container Platform Networking for Multus plugin must be installed, and kube-ovn must be v4.1.5 or later.
Procedure
-
Create the Istio resource by running the following command:
-
Wait for the Istio control plane to return the
Readystatus condition by running the following command: