Alibaba Cloud Service Mesh (ASM) can simplify microservice management in the microservices model. This topic provides a quick-start tutorial to describe how to use ASM to manage applications.

Background information

The following figure shows the procedure for using ASM to manage applications. Procedure
Note Go to the Container Service console to deploy applications in an ASM instance. Perform other operations in the ASM console.

Procedure

  1. Create an ASM instance. For more information, see Create an ASM instance.
  2. Add a cluster to the ASM instance. For more information, see Add a cluster to an ASM instance.
  3. Deploy an ingress gateway in the cluster that is added to the ASM instance. For more information, see Deploy an ingress gateway service.
  4. Deploy applications in the ASM instance. For more information, see Deploy an application in an ASM instance.
  5. Define virtual services and an Istio gateway for the ASM instance. For more information, see Define Istio resources.

FAQ

  • Why am I unable to deploy applications in the control plane of an ASM instance?

    The ASM console provides the kubeconfig file to connect to ASM instances. This way, you can use the kubectl client to manage the Custom Resource Definitions (CRDs) of Istio, such as virtual services. The control plane of an ASM instance is used to manage Istio resources. You cannot deploy applications in the control plane.

  • Why am I unable to deploy the CRDs of Istio, such as virtual services, in the clusters that are managed by ASM?

    The control plane of an ASM instance is used to manage Istio resources. The control plane also provides the kubeconfig file that is used to connect to the ASM instance.

  • Why am I unable to manage Istio resources by using the kubeconfig files of clusters?

    The CRDs of Istio are saved in the control plane. The control plane converts the rules that are defined by Istio CRDs into the rules in sidecar configurations and applies the converted rules.

  • What is the difference between the namespaces in the control plane of an ASM instance and the namespaces of the clusters in the data plane?

    The namespaces that you create in an ASM instance, whether in the ASM console or by using the kubectl client, belong only to the ASM instance. They are independent of the Kubernetes clusters in the data plane that are managed by the ASM instance. Therefore, the namespaces in the control plane of the ASM instance may be different from the namespaces of the Kubernetes clusters in the data plane. When you create or delete namespaces for the ASM instance, the namespaces of the Kubernetes clusters in the data plane are not affected.