Quickly Deploy Alibaba Cloud MSE Cloud‑Native Gateway for Full‑Link Gray Release
This guide explains how to set up Alibaba Cloud's MSE Cloud‑Native Gateway, replace traditional multi‑layer gateway architectures, and use it with EDAS to achieve full‑link gray deployments through step‑by‑step configuration, service import, routing, and verification.
Overview of MSE Cloud‑Native Gateway
MSE Cloud‑Native Gateway is Alibaba Cloud's next‑generation gateway solution that fully complies with the Kubernetes Ingress API. It merges traffic, micro‑service, and security gateways into a single layer, reducing resource consumption, performance loss, operational complexity, and stability risks compared with traditional multi‑layer gateway architectures.
Problems with Traditional Multi‑Layer Gateways
In a conventional setup, separate components such as WAF for security, SLB for load balancing, an Ingress gateway for cluster entry, and Zuul for micro‑service routing are deployed. Each layer requires independent capacity planning, becomes a potential bottleneck, and adds operational overhead and availability risk.
Benefits of the Cloud‑Native Approach
By using MSE Cloud‑Native Gateway, only one managed gateway is needed while retaining SLB for load balancing. The single gateway provides cluster entry, WAF, and micro‑service routing capabilities, is fully managed by Alibaba Cloud, offers SLA‑backed availability, and eliminates the need for user‑managed instances.
Quick Start for EDAS Scenarios
The gateway supports multiple service‑discovery mechanisms, including K8s Service, MSE Nacos, MSE Zookeeper, and EDAS registry. In an EDAS environment, services registered in the EDAS registry can be discovered and routed by the gateway.
Step 1 – Create the Cloud‑Native Gateway
Purchase the gateway via the Alibaba Cloud marketplace (URL: https://common-buy.aliyun.com/?commodityCode=mse_ingresspre_public_cn). Ensure the VPC matches the VPC where EDAS services are deployed.
Step 2 – Create Service Sources
In the gateway console, add a service source for each EDAS micro‑service space. Use the default group DEFAULT_GROUP unless a custom group (e.g., dubbo.registry.group or spring.cloud.nacos.discovery.group) is configured.
Step 3 – Import Services
One‑click import pulls all services from the selected EDAS space. After import, the backend instance IPs and health‑check status confirm successful service discovery.
Step 4 – Create Routes
Define matching rules for HTTP path, method, headers, or query parameters. Select the target service and enable label‑based routing. Save and publish the route to make it active immediately.
Using the Gateway as an Entry for Full‑Link Gray Release
Combine EDAS's mature micro‑service governance with the cloud‑native gateway to achieve gray releases without modifying application code. The solution works for Spring Boot, Spring Cloud, and Dubbo versions released in the past five years.
Deploy Example Services (Spring Cloud)
Three services—sc‑A (shopping cart), sc‑B (transaction), and sc‑C (inventory)—are deployed via Docker images:
sc‑A:
msecrinstance-registry.cn-hangzhou.cr.aliyuncs.com/mse-demo/spring-cloud-a:0.1sc‑B:
msecrinstance-registry.cn-hangzhou.cr.aliyuncs.com/mse-demo/spring-cloud-b:0.1sc‑C:
msecrinstance-registry.cn-hangzhou.cr.aliyuncs.com/mse-demo/spring-cloud-c:0.1Baseline and gray versions are distinguished by Nacos metadata:
spring.cloud.nacos.discovery.metadata.version=base // baseline spring.cloud.nacos.discovery.metadata.version=gray // grayGray pods also set the annotation alicloud.service.tag: gray for Java Agent detection.
Create Service in the Gateway
Import only sc‑A (the entry service) and configure two versions— base and gray —based on the version metadata.
Create Routes for Baseline and Gray Environments
Two hostnames are created: base.example.com and gray.example.com. Routes forward /a to sc‑A's corresponding version using label routing.
curl -H "Host: base.example.com" http://118.31.XX.XX/aResult (baseline):
A[10.66.3.133] -> B[10.66.0.113] -> C[10.66.3.132] curl -H "Host: gray.example.com" http://118.31.XX.XX/aResult (gray):
Agray[10.66.2.3] -> Bgray[10.66.2.69] -> Cgray[10.66.2.195]If the entry service itself lacks a gray version, an additional header x-mse-tag: gray can force downstream services into the gray environment:
curl -H "Host: base.example.com" -H "x-mse-tag: gray" http://118.31.XX.XX/aResult shows the request flowing from baseline A to gray B and C.
Key Diagrams
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
Alibaba Cloud Native
We publish cloud-native tech news, curate in-depth content, host regular events and live streams, and share Alibaba product and user case studies. Join us to explore and share the cloud-native insights you need.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
