ACK Edge clusters use a different Ingress deployment model than ACK Pro clusters, so you must deploy the NGINX Ingress controller manually before installing the cloud-native AI suite. This guide walks you through both steps. After completing it, you will have a running NGINX Ingress controller and a fully deployed cloud-native AI suite accessible through AI Dashboard and AI Developer Console.
Prerequisites
Before you begin, make sure you have:
-
An ACK Edge cluster running Kubernetes 1.18 or later. For more information, see Create an ACK Edge cluster in the console.
-
The csi-plugin and csi-provisioner components installed in the ACK Edge cluster. For more information, see Manage components.
Considerations
If you plan to deploy the NGINX Ingress controller more than once in the same cluster (for example, one controller per node pool), the name and controllerValue fields in ingressClassResource must be unique for each deployment. See Step 1 for the required naming format.
Step 1: Deploy the NGINX Ingress controller
-
Log on to the ACK console. In the left-side navigation pane, click Clusters.
-
On the Clusters page, find the cluster you want to manage and click its name. In the left-side navigation pane, choose Applications > Helm.
-
On the Helm page, click Deploy. In the Basic Information step, configure the following parameters.
Parameter Value Application Name ack-ingress-nginx-{Node pool name}Namespace kube-systemSource Marketplace (default) Chart Set Use Scenarios to All and Supported Architecture to amd64, then search for ack-ingress-nginx-v1. -
Click Next. On the Parameters page, configure the following settings, then click OK.
-
Add the following label to the
service.nodeSelectorparameter:alibabacloud.com/nodepool-id: {Node pool ID}.NoteTo find the node pool ID, go to Nodes > Node Pools in the left-side navigation pane.

-
In the
ingressClassResourceparameter, setnameandcontrollerValueusing the formats below. These values must be unique if you deployack-ingress-nginx-v1multiple times in the same cluster.Field Format Example nameack-nginx-{Node pool name}ack-nginx-edge-hangzhoucontrollerValue"k8s.io/ack-ingress-nginx-{Node pool name}""k8s.io/ack-ingress-nginx-edge-hangzhou"
-
Select an internal-facing or Internet-facing Server Load Balancer (SLB) instance by setting the
enabledparameter underexternalorinternal. If you use an Internet-facing SLB, resolve the domain name to a public IP address. If you use an internal-facing SLB, use an accessible and resolvable private IP address.
-
-
Verify that the NGINX Ingress controller is running. In the left-side navigation pane, choose Network > Services and confirm that the service for your NGINX Ingress controller appears with an assigned IP address.
Step 2: Deploy the cloud-native AI suite
Follow the steps in Deploy the cloud-native AI suite, keeping the following in mind:
-
Deploy the cloud-native AI suite on on-cloud nodes to use cloud computing capabilities. To schedule the suite to a specific node pool, configure the Selector or Affinity parameter on the corresponding pod.
-
To use a self-managed data storage service, install the ack-mysql component when deploying the suite. Deploy the component on an on-cloud node.
-
After installation completes, two Ingresses appear on the Ingresses page. Add the
ingressClassNameparameter to each Ingress so that the IngressClass matches the NGINX Ingress controller you deployed in Step 1. To add the parameter:-
In the left-side navigation pane, choose Network > Ingresses. On the Ingresses page, find the Ingress you want to update and click Edit YAML in the Actions column.

-
Add the
ingressClassNameparameter and set its value to match theingressClassResource.namevalue you configured in Step 1.
-
-
To access the console through a public domain name, resolve the domain name to the IP address of the NGINX Ingress controller. To view the IP address, choose Network > Services in the left-side navigation pane.

What's next
After deployment, access the console through AI Dashboard. For more information, see Access AI Dashboard.