Due to the wide adoption of Kubernetes, enterprises may want to run and manage multiple Kubernetes clusters. This brings challenges such as how to manage multiple clusters, how to use a unified external ingress to access the clusters, and how to schedule resources for the clusters. The master instances of Alibaba Cloud Distributed Cloud Container Platform (ACK One) are managed by Container Service for Kubernetes (ACK). You can use the master instances to manage Kubernetes clusters that are deployed in different environments in a centralized manner. Master instances create a consistent experience for enterprises that want to manage cloud-native applications.
Master instance: Master instances are designed based on open source projects Argo CD, KubeVela, and Open Cluster Management. Master instances support traffic control, provide integration with GitOps, and allow developers to call the same Kubernetes API to schedule and distribute workloads, applications, and configuration files. Master instances are maintenance-free because they are managed by ACK. You can focus on application development.
Associated cluster: You can associate ACK clusters that belong to the same account with a master instance. Then, you can use the master instance to distribute applications and workloads to the associated clusters. You can associate a master instance with clusters that are not deployed in the region where the master instance resides.
Master instance administrator: Master instance administrators are the creators of master instances. Master instance administrators can create namespaces, set the priorities of Jobs, and configure resource quotas for accounts that are assigned the developer role.
Developer: Accounts that are assigned the developer role can only submit Jobs or publish applications in specific namespaces.
The multi-cluster management feature of ACK One is ideal for the following scenarios:
- O&M of resources in multiple regions: ACK One allows you to manage the connections, permissions, configurations, and ciphertext files in clusters that are deployed in different regions.
- Distribute workloads to multiple clusters: ACK One can automatically schedule jobs to multiple clusters. Various types of jobs are supported, such as Spark jobs, Kubernetes Jobs, and TensorFlow training jobs.
- Set quotas for tenants in multiple clusters: ACK One allows you to set quotas for tenants that belong to different clusters.
- Set permissions for tenants in multiple clusters: ACK One allows you to set permissions for tenants that belong to different clusters.
- Application distribution: ACK One allows you to deploy an application to multiple clusters at the same time by using blue-green releases and canary releases. ACK One allows you to roll back the application to a specific version.
- Traffic control: ACK One allows you to distribute traffic to multiple clusters and use traffic policies to regulate the distribution.