For Spring Cloud or Dubbo microservices applications that are deployed in a Kubernetes cluster, you can implement a canary release. The canary release allows you to verify a new application version on a small number of instances. If the verification is successful, you can update the application on all of your instances to the new version. This makes the update secure. This topic describes how to use the EDAS console to implement canary releases of applications in Kubernetes clusters.
Limits
High-Speed Service Framework (HSF) applications: Canary release is not supported.
Dubbo applications: You can implement canary releases of Dubbo applications without limits.
Spring Cloud applications: If you use Deployment.Metadata.Name or Deployment.Metadata.Uid to configure some features of an application, do not implement a canary release for the application. Otherwise, the native features of the application may be abnormal after the canary release.
Ingress applications: If your application is an ingress application and you use a Server Load Balancer (SLB) instance to directly forward traffic to the ingress application, the SLB traffic forwarding policy does not follow the canary release policy.
NoteIf you still want to use the canary release feature for an ingress application, you can create a client application and a server application that has multiple replicas. Then, you can implement canary release for the server application and associate an SLB instance with the client application to allow service access by using SLB.
Procedure
Log on to the EDAS console.
In the left-side navigation pane, choose . In the top navigation bar, select a region. In the upper part of the Applications page, select a microservices namespace from the Microservices Namespace drop-down list.
On the Applications page, select Kubernetes Cluster from the Cluster Type drop-down list. Then, click the name of the application for which you want to implement a canary release.
In the upper-right corner of the Application Overview page, choose . On the Set Deployment Mode page, click Start Deployment in the upper-right corner of the Canary Release (Phased) section.
On the Canary Release (Phased) page, configure the deployment method, release policy, and canary release rule for the new version of the application based on your business requirements. Then, click OK.
After a canary release is started, EDAS deploys the new version of the application to the specified canary instance group. The deployment progress and status are displayed on the Upgrade History page.
NoteYou can check whether the traffic is distributed as expected. For more information, see Monitor canary traffic.
After the traffic for the canary release is verified, click Start the Next Batch on the right side of the Change List page. Complete the release of the subsequent batches.
If an issue occurs during the verification, you can click RollBack in the upper-right corner of the Change List page. In the dialog box that appears, click OK.
After the canary release is complete, check whether the deployment package is of the new version in the Deployment specifications section of the Application Overview page.