When you run Java microservices on Kubernetes, you need application lifecycle management, monitoring, and service governance on top of the cluster runtime. Enterprise Distributed Application Service (EDAS) adds these capabilities to Container Service for Kubernetes (ACK), so you can deploy, monitor, and govern containerized Java applications from a single console.
This guide walks you through three stages: creating an ACK cluster, importing it into EDAS, and deploying a Java application from a container image.
How it works

Create an ACK cluster in the ACK console.
Import the cluster into EDAS to enable application management, monitoring, and governance.
Deploy your Java application from a container image in the EDAS console.
Prerequisites
Before you begin, make sure that you have:
Activated EDAS and ACK for your Alibaba Cloud account
Created a microservice namespace. See Manage a microservice namespace
Granted ACK default roles to your account. See ACK default roles
Step 1: Create an ACK cluster
Log on to the ACK console and create a managed Kubernetes cluster. For instructions, see Create a managed Kubernetes cluster.
ACK Serverless clusters: To use Alibaba Cloud Service Mesh (ASM) after importing an ACK Serverless cluster into EDAS, apply these settings during cluster creation:
| Setting | Value |
|---|---|
| VPC | Create VPC |
| Service Discovery | PrivateZone |
If you set VPC to Select Existing VPC, verify that the cluster contains the required VPC and vSwitch resources. For more information, see Create an ACK Serverless cluster.
Step 2: Import the ACK cluster into EDAS
Importing an ACK cluster automatically installs the following components:
| Component | Purpose |
|---|---|
| ack-ahas-sentinel-pilot | Throttling and degradation (application protection) |
| ack-arms-pilot | Application Real-Time Monitoring Service (ARMS) agent |
| ack-arms-prometheus | Prometheus monitoring |
To import the cluster:
Log on to the EDAS console.
In the left-side navigation pane, choose Resource Management > Container Service Kubernetes Clusters.
In the top navigation bar, select the region of your ACK cluster, then click Synchronize Container Service Kubernetes Cluster.
Find your cluster and click Import in the Actions column.
In the Precheck for Import dialog box, click Continue.
In the Import Kubernetes Cluster dialog box:
Select a microservice namespace from the Microservice Namespace drop-down list.
Turn Service Mesh on or off based on your requirements.
Click Import.
Verify the import: The import is successful when Cluster Status shows Running and Import Status shows Imported.
Step 3: Deploy the Java application
3a. Create the application
Log on to the EDAS console.
In the left-side navigation pane, choose Application Management > Applications.
In the top navigation bar, select a region and a microservice namespace.
Click Create Application.
3b. Configure basic information
In the Basic Information step, set the following parameters and click Next.
| Parameter | Value for this guide |
|---|---|
| Cluster Type | Kubernetes Clusters. Kubernetes clusters support ASM. |
| Application Source Type | Default |
| Hosted Applications | Java |
| Select Application | Custom. A custom image provides its own built-in runtime environment. |
OpenJDK 17 is compatible with Dubbo 2.7.14 and later, or Dubbo 3.0.6 and later.
OpenJDK 17 compatibility test data
| Dubbo version | Spring Boot version | Nacos client version | API call | ARMS monitoring | Service list |
|---|---|---|---|---|---|
| 2.7.14 | 2.7.9 | 1.4.4 | Supported | Supported | Supported |
| 2.7.14 | 2.7.9 | 2.1.2 | Supported | Supported | Supported |
| 2.7.14 | 2.7.9 | 2.2.0 | Supported | Supported | Supported |
| 2.7.22 | 2.7.9 | 1.4.4 | Supported | Supported | Supported |
| 2.7.22 | 2.7.9 | 2.1.2 | Supported | Supported | Supported |
| 2.7.22 | 2.7.9 | 2.2.0 | Supported | Supported | Supported |
| 3.0.6 | 2.7.9 | 1.4.4 | Supported | Supported | Supported |
| 3.0.6 | 2.7.9 | 2.1.2 | Supported | Supported | Supported |
| 3.0.6 | 2.7.9 | 2.2.0 | Supported | Supported | Supported |
| 3.1.7 | 2.7.9 | 1.4.4 | Supported | Supported | Supported |
| 3.1.7 | 2.7.9 | 2.1.2 | Supported | Supported | Supported |
| 3.1.7 | 2.7.9 | 2.2.0 | Supported | Supported | Supported |
3c. Configure the deployment
In the Configurations step, set the following parameters and click Next.
Environment
| Parameter | Description |
|---|---|
| Microservice Namespace | Select the namespace you created earlier. Defaults to Default if not specified. To create one, click Create Microservice Namespace. See the "Create a namespace" section of Manage microservice namespaces. |
| Cluster | Select a Kubernetes cluster. If the cluster has not been imported to EDAS, select This cluster is used for the first time in EDAS to import it during application creation, and then check whether Alibaba Cloud Service Mesh is activated. Importing the cluster consumes a certain amount of time. The cluster does not need to belong to the same microservice namespace. |
| K8s Namespace | Kubernetes namespace for the application. Options: default, kube-system (system objects), kube-public (readable by all users, including unauthenticated users). To create a custom namespace, click Create Kubernetes Namespace. Names can contain digits, lowercase letters, and hyphens (-), must be 1--63 characters, and must start and end with a letter or digit. |
Application details
| Parameter | Description |
|---|---|
| Application Name | Starts with a letter. Can contain digits, letters, and hyphens (-). Maximum 36 characters. |
| Application Description | Optional. Maximum 128 characters. |
Image source
| Parameter | Description |
|---|---|
| Image Type: Configure Image | Use a container image from Alibaba Cloud Container Registry (ACR). |
| -- Current Account | Select the Region, Container Registry, Image Repository Namespace, Image Repository Name, and an image version. |
| -- Other Alibaba Cloud Accounts (public repo) | Enter the Full Image Address. |
| -- Other Alibaba Cloud Accounts (private repo) | Use the aliyun-acr-credential-helper component to pull images without a secret. See Use the aliyun-acr-credential-helper component to pull images without secrets. |
| Image Type: Demo Image | Use a demo image provided by EDAS and select an image version. Demo images are not available for Apsara Stack. |
RAM users must have the required permissions to use Container Registry Enterprise Edition images. See Configure policies for RAM users to access Container Registry.
Resources
| Parameter | Description |
|---|---|
| Total Pods | Number of Pods to deploy. Maximum depends on cluster capacity. |
| Single-pod Resource Quota | CPU, memory, and ephemeral storage per Pod. The default value 0 means no limit. Maximum quotas depend on cluster capacity. |
3d. Configure advanced settings (optional)
In the Advanced Settings step, configure any of the following as needed:
If your application uses JDK 11 or JDK 17, add the corresponding annotation:
| JDK version | Annotation |
|---|---|
| JDK 11 | one-agent.jdk.version: OpenJDK11 |
| JDK 17 | one-agent.jdk.version: OpenJDK17 |
3e. Submit and verify deployment
After configuring advanced settings, click Create Application.
In the Creation Completed step, click Create Application again.
In the Confirm Application Change Precheck dialog box, click Start Precheck.
Review the precheck results and click Continue.
To re-run the precheck after making changes, click Check Again.
Deployment takes a few minutes. Track progress on the Change List page.
Verify deployment: On the Application Overview page, confirm that all Pods show the running state. Click a Pod's status to view its Deployments, pods, and advanced configurations.
Set up network access
After deployment, configure network access for your application:
Public access: Bind an Internet-facing Server Load Balancer (SLB) instance. See Bind CLB instances.
Internal access: Bind an internal-facing SLB instance to allow access from other resources in the same VPC. See Reuse a CLB instance.
Contact us
For questions or suggestions about ACK clusters and ACK Serverless clusters in EDAS, join the DingTalk group (group ID: 23197114) for technical support.