| name | alibabacloud-ecs-scenario-ops |
| description | Alibaba Cloud ECS scenario-based operations. Use for end-to-end operational scenarios
that combine multiple ECS operations into complete workflows: full-stack instance
provisioning (VPC + SecurityGroup + Instance), disk expansion with OS resize, adding
data disks with formatting, instance migration, and batch operations.
Triggers: "create full instance", "provision ecs", "expand disk and resize partition",
"add data disk", "format disk", "ecs migration", "batch ecs operations",
"ecs scenario", "full stack ecs", "instance with network".
|
| source | alibabacloud-ecs-ops |
ECS Scenario-Based Operations
End-to-end operational scenarios combining multiple ECS capabilities into complete workflows.
Pre-check: Alibaba Cloud CLI must be installed and at least version 3.3.3.
aliyun version
Pre-check: Alibaba Cloud Credentials Required
aliyun configure list
If no valid profile exists, STOP and guide user to configure credentials.
Pre-check: Aliyun CLI plugin update required
aliyun configure set --auto-plugin-install true
aliyun plugin update
Observability (MUST follow for every aliyun command)
Upon loading this skill, generate a random session ID (32-char lowercase hex string) once for the entire session.
--user-agent AlibabaCloud-Agent-Skills/alibabacloud-ecs-scenario-ops/{session-id}
Cost Estimation (MUST before any chargeable scenario)
Every scenario below may contain chargeable operations. Before executing step 1 of any scenario, you MUST follow the alibabacloud-cli-cost-estimation skill to evaluate the overall task cost:
- Quote all chargeable steps up front using
--estimate-cost and --estimate-cost-context as needed.
- Present one consolidated cost plan with each step labelled (
PAY NOW / FUTURE / REFUND / FREE), plus the total of immediate charges.
- Ask for a single confirmation of the whole scenario, then execute steps in order.
- If a step fails mid-sequence, stop and re-quote remaining steps before continuing.
The cost evaluation output must include a clearly labelled cost summary section so the user can identify it before confirming.
See the alibabacloud-cli-cost-estimation SKILL.md for the full cost plan format and quoting rules.
Core Workflow
IMPORTANT: Parameter Confirmation — Before executing any command or API call,
ALL user-customizable parameters MUST be confirmed with the user.
Scenario 1: Full-Stack Instance Provisioning
Provision a complete ECS instance with VPC, VSwitch, Security Group, and Instance.
Step 1.1: Check or Create VPC
aliyun vpc describe-vpcs --biz-region-id <RegionId> \
--user-agent AlibabaCloud-Agent-Skills/alibabacloud-ecs-scenario-ops/{session-id}
aliyun vpc create-vpc --biz-region-id <RegionId> \
--cidr-block 10.0.0.0/8 \
--vpc-name "<VpcName>" \
--user-agent AlibabaCloud-Agent-Skills/alibabacloud-ecs-scenario-ops/{session-id}
aliyun vpc describe-vpcs --biz-region-id <RegionId> \
--vpc-id <VpcId> \
--user-agent AlibabaCloud-Agent-Skills/alibabacloud-ecs-scenario-ops/{session-id}
Step 1.2: Create VSwitch
aliyun vpc create-v-switch --biz-region-id <RegionId> \
--zone-id <ZoneId> \
--vpc-id <VpcId> \
--cidr-block 10.1.1.0/24 \
--v-switch-name "<VSwitchName>" \
--user-agent AlibabaCloud-Agent-Skills/alibabacloud-ecs-scenario-ops/{session-id}
Step 1.3: Create Security Group with Rules
aliyun ecs create-security-group --biz-region-id <RegionId> \
--vpc-id <VpcId> \
--security-group-name "<SGName>" \
--user-agent AlibabaCloud-Agent-Skills/alibabacloud-ecs-scenario-ops/{session-id}
aliyun ecs authorize-security-group --biz-region-id <RegionId> \
--security-group-id <SecurityGroupId> \
--ip-protocol tcp \
--port-range 22/22 \
--source-cidr-ip <SourceCIDR> \
--policy accept \
--user-agent AlibabaCloud-Agent-Skills/alibabacloud-ecs-scenario-ops/{session-id}
Step 1.4: Create and Start Instance
aliyun ecs run-instances \
--biz-region-id <RegionId> \
--security-group-id <SecurityGroupId> \
--v-switch-id <VSwitchId> \
--image-id <ImageId> \
--instance-type <InstanceType> \
--instance-name <InstanceName> \
--system-disk.category cloud_essd \
--system-disk.size 40 \
--instance-charge-type PostPaid \
--internet-max-bandwidth-out 5 \
--internet-charge-type PayByTraffic \
--user-agent AlibabaCloud-Agent-Skills/alibabacloud-ecs-scenario-ops/{session-id}
Step 1.5: Wait for Instance Running
aliyun ecs describe-instances --biz-region-id <RegionId> \
--instance-ids '["<InstanceId>"]' \
--user-agent AlibabaCloud-Agent-Skills/alibabacloud-ecs-scenario-ops/{session-id}
Scenario 2: Disk Expansion with OS Partition Resize
Expand a cloud disk and resize the OS partition in one workflow.
Step 2.1: Create Snapshot (Safety Backup)
aliyun ecs create-snapshot --disk-id <DiskId> \
--snapshot-name "pre-resize-$(date +%Y%m%d)" \
--user-agent AlibabaCloud-Agent-Skills/alibabacloud-ecs-scenario-ops/{session-id}
Step 2.2: Expand Cloud Disk
aliyun ecs resize-disk --disk-id <DiskId> \
--new-size <NewSizeGB> \
--type online \
--user-agent AlibabaCloud-Agent-Skills/alibabacloud-ecs-scenario-ops/{session-id}
Step 2.3: Resize OS Partition (via Cloud Assistant)
aliyun ecs run-command \
--biz-region-id <RegionId> \
--type RunShellScript \
--command-content "$(echo 'growpart /dev/vda 1 && resize2fs /dev/vda1 && df -h' | base64)" \
--content-encoding Base64 \
--instance-id.1 <InstanceId> \
--user-agent AlibabaCloud-Agent-Skills/alibabacloud-ecs-scenario-ops/{session-id}
aliyun ecs run-command \
--biz-region-id <RegionId> \
--type RunShellScript \
--command-content "$(echo 'growpart /dev/vda 1 && xfs_growfs /dev/vda1 && df -h' | base64)" \
--content-encoding Base64 \
--instance-id.1 <InstanceId> \
--user-agent AlibabaCloud-Agent-Skills/alibabacloud-ecs-scenario-ops/{session-id}
Scenario 3: Add and Format Data Disk
Create, attach, and format a new data disk for an existing instance.
Step 3.1: Create and Attach Data Disk
aliyun ecs create-disk --biz-region-id <RegionId> \
--zone-id <ZoneId> \
--disk-category cloud_essd \
--size <SizeGB> \
--disk-name "<DataDiskName>" \
--user-agent AlibabaCloud-Agent-Skills/alibabacloud-ecs-scenario-ops/{session-id}
aliyun ecs attach-disk --instance-id <InstanceId> \
--disk-id <DiskId> \
--user-agent AlibabaCloud-Agent-Skills/alibabacloud-ecs-scenario-ops/{session-id}
Step 3.2: Format and Mount (via Cloud Assistant)
aliyun ecs run-command \
--biz-region-id <RegionId> \
--type RunShellScript \
--command-content "$(echo 'fdisk -u -c /dev/vdb <<EOF
n
p
1
w
EOF
mkfs.ext4 /dev/vdb1
mkdir -p /data
mount /dev/vdb1 /data
echo "/dev/vdb1 /data ext4 defaults 0 0" >> /etc/fstab
df -h' | base64)" \
--content-encoding Base64 \
--instance-id.1 <InstanceId> \
--user-agent AlibabaCloud-Agent-Skills/alibabacloud-ecs-scenario-ops/{session-id}
Scenario 4: Batch Instance Operations
Perform operations on multiple instances simultaneously.
for id in <InstanceId1> <InstanceId2> <InstanceId3>; do
aliyun ecs stop-instance --instance-id "$id" \
--user-agent AlibabaCloud-Agent-Skills/alibabacloud-ecs-scenario-ops/{session-id}
done
aliyun ecs describe-instances --biz-region-id <RegionId> \
--instance-ids '["<Id1>","<Id2>","<Id3>"]' \
--user-agent AlibabaCloud-Agent-Skills/alibabacloud-ecs-scenario-ops/{session-id}
RAM Policy
Combines permissions from all involved ECS operations:
- VPC:
vpc:CreateVpc, vpc:CreateVSwitch, vpc:DescribeVpcs, vpc:DescribeVSwitches
- ECS:
ecs:RunInstances, ecs:DescribeInstances, ecs:CreateSecurityGroup, ecs:AuthorizeSecurityGroup
- Disk:
ecs:CreateDisk, ecs:AttachDisk, ecs:ResizeDisk, ecs:CreateSnapshot
- Cloud Assistant:
ecs:RunCommand, ecs:DescribeInvocations
[MUST] Permission Failure Handling: When any command fails due to permission errors, read references/ram-policies.md, use ram-permission-diagnose skill, and pause until permissions are granted.
Success Verification
- Scenario 1: Instance in
Running state, SSH accessible, security group rules correct
- Scenario 2: Disk size matches new value,
df -h shows expanded partition
- Scenario 3: Data disk visible in
lsblk, mounted at target path, survives reboot
- Scenario 4: All target instances in expected state
Cleanup
For each scenario, reverse the creation order:
- Release/delete instances → 2. Delete disks → 3. Delete snapshots → 4. Delete security groups → 5. Delete VSwitches → 6. Delete VPCs