Skip to main content

ack-setup

Configure or troubleshoot an Alibaba Cloud ACK profile and its paired datus k8s provider profile, including the default credential chain, access keys or STS, RAM roles, RRSA/external credentials, endpoint selection, and verification.

Source facts

Repository
Datus-ai/Datus-Plugins
Last source activity
August 20, 2026 at 09:04
Detected SKILL.md language
English
Stars
0
Forks
1

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
ack-setup
description
Configure or troubleshoot an Alibaba Cloud ACK profile and its paired datus k8s provider profile, including the default credential chain, access keys or STS, RAM roles, RRSA/external credentials, endpoint selection, and verification.
requires_mutable_config
true
# ACK Setup Add profiles under `agent.plugins.ack.<profile>` in the active Datus config. Prefer the Alibaba Cloud default credential chain, an attached RAM/ECS role, RRSA, or another short-lived identity over static keys. ## Collect and configure Collect the profile name, `region_id`, `cluster_id`, authentication mode, endpoint choice, and Kubernetes namespace. ```yaml agent: plugins: ack: prod: default: true region_id: cn-hangzhou cluster_id: c123456789 # Omit for the default credential chain, otherwise choose one mode. # access_key_id: ${ALIBABA_CLOUD_ACCESS_KEY_ID} # access_key_secret: ${ALIBABA_CLOUD_ACCESS_KEY_SECRET} # security_token: ${ALIBABA_CLOUD_SECURITY_TOKEN} # with temporary keys # role_arn: acs:ram::123456789012:role/datus-ack # role_session_name: datus-ack # credentials_uri: ${ALIBABA_CLOUD_CREDENTIALS_URI} # endpoint: cs.cn-hangzhou.aliyuncs.com use_private_endpoint: "false" credential_ttl_minutes: "15" timeout: "60" max_attempts: "3" k8s: prod: provider: ack namespace: analytics allowed_namespaces: analytics ``` Write secrets only as `${ENV_VAR}` references and require those variables in the Datus process environment. Configure `access_key_id` and `access_key_secret` together; add `security_token` only for STS credentials. `role_arn` assumes a RAM role through the source identity. `credentials_uri` selects an external credential provider and is itself treated as sensitive. `endpoint` overrides the ACK OpenAPI endpoint. `use_private_endpoint` selects the cluster's private Kubernetes endpoint. `credential_ttl_minutes` controls the requested temporary kubeconfig duration and must be between 15 and 4320 (3 days), the range ACK accepts. Grant only the RAM permissions needed to read clusters/node pools/add-ons/tasks and retrieve temporary user kubeconfig. Kubernetes RBAC separately limits the returned cluster identity. Temporary kubeconfigs containing either a bearer token or a client certificate/private key pair are supported. The complete kubeconfig is never persisted; certificate credentials are held in owner-only temporary files for the lifetime of one `datus k8s` process. If k8s and ACK profile names differ, add `provider_profile: prod` to k8s. For a non-default provider config file, also set `provider_config`. Keep Alibaba Cloud credentials only in the ACK profile. ## Verify ```bash datus ack --profile prod auth check -o json datus ack --profile prod clusters describe -o json datus k8s --profile prod version datus k8s --profile prod auth can-i get pods -n analytics ``` For failures, distinguish credential-chain/RAM errors, malformed temporary kubeconfig, Kubernetes RBAC denial, and private endpoint reachability. If this environment cannot edit the active config, ask the deployment administrator to make the change.
View on GitHub