The ack-onepilot component connects your Container Service for Kubernetes (ACK) cluster to the Application Real-Time Monitoring Service (ARMS) backend. By default, ack-onepilot selects its network path automatically. If your cluster has network restrictions -- such as no public internet access or strict firewall rules -- configure the network mode explicitly by setting the ALIYUN_NETWORK environment variable.
Network modes
ack-onepilot supports three network modes. The following table describes each mode and when to use it.
| Mode | Behavior | Use when |
|---|---|---|
auto | Uses the internal network. Falls back to the public network if the internal network is unreachable. Failover applies to both data access requests and agent package pulls. | You want reliable connectivity without manual network planning. |
internal | Uses only the internal network. No traffic goes over the public internet. | Your cluster has Virtual Private Cloud (VPC) connectivity to ARMS and your security policies prohibit public internet access. |
public | Uses only the public network. | Your cluster lacks internal network connectivity to ARMS, or you need to isolate network issues during troubleshooting. |
Environment variable reference
| Property | Value |
|---|---|
| Variable name | ALIYUN_NETWORK |
| Valid values | public, internal, auto |
| Minimum version | ack-onepilot V4.1.2 |
Set the network mode
Before you begin, make sure that you have ack-onepilot V4.1.2 or later installed in your cluster.
Log on to the ACK console. In the left-side navigation pane, click Clusters.
On the Clusters page, find your cluster and click its name. In the left-side pane, choose Workloads > Deployments.
On the Deployments page, select the ack-onepilot component. The default deployment name is ack-onepilot-ack-onepilot in the ack-onepilot namespace.
In the upper-right corner, click Edit.
Scroll down to the Environments section. Click Add and create an environment variable with the following values:
Name:
ALIYUN_NETWORKValue:
public,internal, orauto

Save the configuration and restart the ack-onepilot component.
Verify the configuration
After the restart completes, confirm that all ack-onepilot pods are running:
kubectl get pods -n ack-onepilotAll pods should show Running status with no recent restarts.