This skill teaches you how to use the Aliyun CLI to manage
Alibaba Cloud resources. You will construct and explain aliyun commands, interpret their output,
and guide users through cloud resource management tasks.
| Resource | Reference File | Common Operations |
|---|---|---|
| ---------- | --------------- | ------------------- |
| Setup & Auth | references/setup.md | install, configure, switch profiles |
| ECS (Elastic Compute Service) | references/ecs.md | list, start/stop/reboot, resize disk, create snapshot |
| VPC (Virtual Private Cloud) | references/vpc.md | manage VPCs, VSwitches, EIPs, NAT gateways, route tables |
| OSS (Object Storage Service) | references/oss.md | buckets, upload/download, sync, presigned URLs |
| RDS (Relational Database Service) | references/rds.md | instances, databases, accounts, backups, IP whitelist |
| SLB / CLB (Load Balancer) | references/slb.md | create LB, manage listeners, add/remove backend servers |
| RAM (Resource Access Management) | references/ram.md | users, groups, roles, policies, access keys |
| DNS (AliDNS) | references/dns.md | list domains, add/update/delete records |
| ACR (Container Registry) | references/acr.md | instances, namespaces, repositories, image tags, docker login |
Read the relevant reference file before responding to a request.
Every aliyun command follows this structure:
aliyun <Product> <Operation> [--Parameter Value ...]
ecs, oss, vpc, rds, ram)DescribeInstances, StartInstance)-- (e.g., --RegionId cn-hangzhou, --InstanceId i-xxxx)OSS is an exception — it uses a subcommand style like aliyun oss ls, aliyun oss cp.
Before constructing any command:
--RegionId. Common regions:cn-hangzhou (Hangzhou), cn-beijing (Beijing), cn-shanghai (Shanghai)cn-shenzhen (Shenzhen), ap-southeast-1 (Singapore), us-west-1 (US West)aliyun configure get to find the default.If the user hasn't provided one, first run a Describe/List command to find it.
Use --PageSize 100 and --PageNumber to retrieve more. Mention this if results seem incomplete.
always confirm resource IDs with the user before executing.
The CLI supports multiple output formats via the --output flag:
--output cols=, — tabular output for quick scanning--output table — aligned tableFor human-readable summaries, use --output cols=InstanceId,InstanceName,Status style where available.
zsh gotcha: If you use rows=Instances.Instance[], the [] will be interpreted as a glob by zsh
and cause a "no matches found" error. Quote the argument to avoid this:
aliyun ecs DescribeInstances \
--output 'cols=InstanceId,InstanceName,Status' 'rows=Instances.Instance[]'
Or simply omit rows= and use the default JSON output when tabular formatting isn't critical.
When the user asks to perform an operation on a named resource (e.g., "restart my server called web-prod"):
```bash
aliyun ecs DescribeInstances --RegionId cn-hangzhou
```
Common errors and what to do:
| Error | Cause | Solution |
|---|---|---|
| ------- | ------- | ---------- |
InvalidAccessKeyId | Wrong or expired credentials | Run aliyun configure to reconfigure |
Forbidden.RAM | Insufficient RAM permissions | Check RAM policy for required action |
IncorrectInstanceStatus | Wrong instance state for operation | Describe instance status first |
InvalidRegionId | Unsupported region for this product | Check product availability in that region |
Throttling | API rate limit hit | Add a brief delay and retry |
If the user has not yet installed or configured the CLI, read references/setup.md and guide them
through it before attempting any commands.
instead of hardcoding credentials
When the user needs to operate on multiple resources (e.g., "list all instances in all regions"),
you can run several commands and combine the results. For shell loops:
for region in cn-hangzhou cn-beijing cn-shanghai cn-shenzhen ap-southeast-1; do
echo "=== $region ==="
aliyun ecs DescribeInstances --RegionId $region
done
共 1 个版本