aliyun-cli

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

阿里云 CLI 操作

阿里云 CLI 操作

概述

概述

阿里云 ECS、OSS、RDS 等服务的命令行操作技能。
阿里云 ECS、OSS、RDS 等服务的命令行操作技能。

配置与认证

配置与认证

bash
undefined
bash
undefined

配置凭证

配置凭证

aliyun configure aliyun configure --profile myprofile
aliyun configure aliyun configure --profile myprofile

交互式配置

交互式配置

Access Key ID: xxx

Access Key ID: xxx

Access Key Secret: xxx

Access Key Secret: xxx

Default Region Id: cn-hangzhou

Default Region Id: cn-hangzhou

Default Output Format: json

Default Output Format: json

查看配置

查看配置

aliyun configure list
aliyun configure list

使用 profile

使用 profile

aliyun ecs DescribeInstances --profile myprofile
aliyun ecs DescribeInstances --profile myprofile

环境变量

环境变量

export ALICLOUD_ACCESS_KEY=xxx export ALICLOUD_SECRET_KEY=xxx export ALICLOUD_REGION=cn-hangzhou
undefined
export ALICLOUD_ACCESS_KEY=xxx export ALICLOUD_SECRET_KEY=xxx export ALICLOUD_REGION=cn-hangzhou
undefined

ECS 实例

ECS 实例

实例管理

实例管理

bash
undefined
bash
undefined

列出实例

列出实例

aliyun ecs DescribeInstances aliyun ecs DescribeInstances --RegionId cn-hangzhou
aliyun ecs DescribeInstances aliyun ecs DescribeInstances --RegionId cn-hangzhou

按状态过滤

按状态过滤

aliyun ecs DescribeInstances --Status Running
aliyun ecs DescribeInstances --Status Running

查看实例详情

查看实例详情

aliyun ecs DescribeInstanceAttribute --InstanceId i-xxx
aliyun ecs DescribeInstanceAttribute --InstanceId i-xxx

启动实例

启动实例

aliyun ecs StartInstance --InstanceId i-xxx
aliyun ecs StartInstance --InstanceId i-xxx

停止实例

停止实例

aliyun ecs StopInstance --InstanceId i-xxx aliyun ecs StopInstance --InstanceId i-xxx --ForceStop true
aliyun ecs StopInstance --InstanceId i-xxx aliyun ecs StopInstance --InstanceId i-xxx --ForceStop true

重启实例

重启实例

aliyun ecs RebootInstance --InstanceId i-xxx
aliyun ecs RebootInstance --InstanceId i-xxx

删除实例

删除实例

aliyun ecs DeleteInstance --InstanceId i-xxx --Force true
undefined
aliyun ecs DeleteInstance --InstanceId i-xxx --Force true
undefined

创建实例

创建实例

bash
undefined
bash
undefined

创建实例

创建实例

aliyun ecs CreateInstance
--RegionId cn-hangzhou
--ImageId ubuntu_22_04_x64_20G_alibase_20230907.vhd
--InstanceType ecs.t6-c1m1.large
--SecurityGroupId sg-xxx
--VSwitchId vsw-xxx
--InstanceName my-instance
--InternetChargeType PayByTraffic
--InternetMaxBandwidthOut 5
aliyun ecs CreateInstance
--RegionId cn-hangzhou
--ImageId ubuntu_22_04_x64_20G_alibase_20230907.vhd
--InstanceType ecs.t6-c1m1.large
--SecurityGroupId sg-xxx
--VSwitchId vsw-xxx
--InstanceName my-instance
--InternetChargeType PayByTraffic
--InternetMaxBandwidthOut 5

分配公网 IP

分配公网 IP

aliyun ecs AllocatePublicIpAddress --InstanceId i-xxx
undefined
aliyun ecs AllocatePublicIpAddress --InstanceId i-xxx
undefined

安全组

安全组

bash
undefined
bash
undefined

列出安全组

列出安全组

aliyun ecs DescribeSecurityGroups --RegionId cn-hangzhou
aliyun ecs DescribeSecurityGroups --RegionId cn-hangzhou

创建安全组

创建安全组

aliyun ecs CreateSecurityGroup
--RegionId cn-hangzhou
--VpcId vpc-xxx
--SecurityGroupName my-sg
aliyun ecs CreateSecurityGroup
--RegionId cn-hangzhou
--VpcId vpc-xxx
--SecurityGroupName my-sg

添加入方向规则

添加入方向规则

aliyun ecs AuthorizeSecurityGroup
--SecurityGroupId sg-xxx
--IpProtocol tcp
--PortRange 22/22
--SourceCidrIp 0.0.0.0/0
aliyun ecs AuthorizeSecurityGroup
--SecurityGroupId sg-xxx
--IpProtocol tcp
--PortRange 22/22
--SourceCidrIp 0.0.0.0/0

删除规则

删除规则

aliyun ecs RevokeSecurityGroup
--SecurityGroupId sg-xxx
--IpProtocol tcp
--PortRange 22/22
--SourceCidrIp 0.0.0.0/0
undefined
aliyun ecs RevokeSecurityGroup
--SecurityGroupId sg-xxx
--IpProtocol tcp
--PortRange 22/22
--SourceCidrIp 0.0.0.0/0
undefined

OSS 存储

OSS 存储

ossutil 工具

ossutil 工具

bash
undefined
bash
undefined

配置

配置

ossutil config
ossutil config

列出桶

列出桶

ossutil ls
ossutil ls

创建桶

创建桶

ossutil mb oss://my-bucket
ossutil mb oss://my-bucket

上传文件

上传文件

ossutil cp file.txt oss://my-bucket/ ossutil cp -r ./dir oss://my-bucket/dir/
ossutil cp file.txt oss://my-bucket/ ossutil cp -r ./dir oss://my-bucket/dir/

下载文件

下载文件

ossutil cp oss://my-bucket/file.txt ./ ossutil cp -r oss://my-bucket/dir/ ./dir/
ossutil cp oss://my-bucket/file.txt ./ ossutil cp -r oss://my-bucket/dir/ ./dir/

同步目录

同步目录

ossutil sync ./local-dir oss://my-bucket/prefix/ ossutil sync oss://my-bucket/prefix/ ./local-dir
ossutil sync ./local-dir oss://my-bucket/prefix/ ossutil sync oss://my-bucket/prefix/ ./local-dir

删除文件

删除文件

ossutil rm oss://my-bucket/file.txt ossutil rm -r oss://my-bucket/dir/
ossutil rm oss://my-bucket/file.txt ossutil rm -r oss://my-bucket/dir/

删除桶

删除桶

ossutil rb oss://my-bucket
ossutil rb oss://my-bucket

生成签名 URL

生成签名 URL

ossutil sign oss://my-bucket/file.txt --timeout 3600
undefined
ossutil sign oss://my-bucket/file.txt --timeout 3600
undefined

OSS API

OSS API

bash
undefined
bash
undefined

列出桶

列出桶

aliyun oss ListBuckets
aliyun oss ListBuckets

列出对象

列出对象

aliyun oss ListObjects --BucketName my-bucket
aliyun oss ListObjects --BucketName my-bucket

获取桶信息

获取桶信息

aliyun oss GetBucketInfo --BucketName my-bucket
undefined
aliyun oss GetBucketInfo --BucketName my-bucket
undefined

RDS 数据库

RDS 数据库

bash
undefined
bash
undefined

列出实例

列出实例

aliyun rds DescribeDBInstances --RegionId cn-hangzhou
aliyun rds DescribeDBInstances --RegionId cn-hangzhou

查看实例详情

查看实例详情

aliyun rds DescribeDBInstanceAttribute --DBInstanceId rm-xxx
aliyun rds DescribeDBInstanceAttribute --DBInstanceId rm-xxx

创建实例

创建实例

aliyun rds CreateDBInstance
--RegionId cn-hangzhou
--Engine MySQL
--EngineVersion 8.0
--DBInstanceClass rds.mysql.s2.large
--DBInstanceStorage 100
--DBInstanceNetType Intranet
--PayType Postpaid
aliyun rds CreateDBInstance
--RegionId cn-hangzhou
--Engine MySQL
--EngineVersion 8.0
--DBInstanceClass rds.mysql.s2.large
--DBInstanceStorage 100
--DBInstanceNetType Intranet
--PayType Postpaid

创建数据库

创建数据库

aliyun rds CreateDatabase
--DBInstanceId rm-xxx
--DBName mydb
--CharacterSetName utf8mb4
aliyun rds CreateDatabase
--DBInstanceId rm-xxx
--DBName mydb
--CharacterSetName utf8mb4

创建账号

创建账号

aliyun rds CreateAccount
--DBInstanceId rm-xxx
--AccountName admin
--AccountPassword 'MyPassword123!'
--AccountType Super
aliyun rds CreateAccount
--DBInstanceId rm-xxx
--AccountName admin
--AccountPassword 'MyPassword123!'
--AccountType Super

重启实例

重启实例

aliyun rds RestartDBInstance --DBInstanceId rm-xxx
undefined
aliyun rds RestartDBInstance --DBInstanceId rm-xxx
undefined

ACK 容器服务

ACK 容器服务

bash
undefined
bash
undefined

列出集群

列出集群

aliyun cs DescribeClusters
aliyun cs DescribeClusters

获取集群详情

获取集群详情

aliyun cs DescribeClusterDetail --ClusterId c-xxx
aliyun cs DescribeClusterDetail --ClusterId c-xxx

获取 kubeconfig

获取 kubeconfig

aliyun cs DescribeClusterUserKubeconfig --ClusterId c-xxx
aliyun cs DescribeClusterUserKubeconfig --ClusterId c-xxx

扩容节点

扩容节点

aliyun cs ScaleCluster
--ClusterId c-xxx
--size 5
undefined
aliyun cs ScaleCluster
--ClusterId c-xxx
--size 5
undefined

SLB 负载均衡

SLB 负载均衡

bash
undefined
bash
undefined

列出实例

列出实例

aliyun slb DescribeLoadBalancers --RegionId cn-hangzhou
aliyun slb DescribeLoadBalancers --RegionId cn-hangzhou

创建实例

创建实例

aliyun slb CreateLoadBalancer
--RegionId cn-hangzhou
--LoadBalancerName my-slb
--AddressType internet
--LoadBalancerSpec slb.s1.small
aliyun slb CreateLoadBalancer
--RegionId cn-hangzhou
--LoadBalancerName my-slb
--AddressType internet
--LoadBalancerSpec slb.s1.small

添加后端服务器

添加后端服务器

aliyun slb AddBackendServers
--LoadBalancerId lb-xxx
--BackendServers '[{"ServerId":"i-xxx","Weight":"100"}]'
aliyun slb AddBackendServers
--LoadBalancerId lb-xxx
--BackendServers '[{"ServerId":"i-xxx","Weight":"100"}]'

创建监听

创建监听

aliyun slb CreateLoadBalancerTCPListener
--LoadBalancerId lb-xxx
--ListenerPort 80
--BackendServerPort 80
--Bandwidth -1
undefined
aliyun slb CreateLoadBalancerTCPListener
--LoadBalancerId lb-xxx
--ListenerPort 80
--BackendServerPort 80
--Bandwidth -1
undefined

常见场景

常见场景

场景 1:批量操作实例

场景 1:批量操作实例

bash
undefined
bash
undefined

获取所有运行中实例

获取所有运行中实例

aliyun ecs DescribeInstances --Status Running
--output cols=InstanceId rows=Instances.Instance[]
aliyun ecs DescribeInstances --Status Running
--output cols=InstanceId rows=Instances.Instance[]

批量停止

批量停止

for id in $(aliyun ecs DescribeInstances --Status Running
--output cols=InstanceId rows=Instances.Instance[] | tail -n +2); do aliyun ecs StopInstance --InstanceId $id done
undefined
for id in $(aliyun ecs DescribeInstances --Status Running
--output cols=InstanceId rows=Instances.Instance[] | tail -n +2); do aliyun ecs StopInstance --InstanceId $id done
undefined

场景 2:监控数据查询

场景 2:监控数据查询

bash
undefined
bash
undefined

查询 CPU 使用率

查询 CPU 使用率

aliyun cms DescribeMetricLast
--Namespace acs_ecs_dashboard
--MetricName CPUUtilization
--Dimensions '[{"instanceId":"i-xxx"}]'
undefined
aliyun cms DescribeMetricLast
--Namespace acs_ecs_dashboard
--MetricName CPUUtilization
--Dimensions '[{"instanceId":"i-xxx"}]'
undefined

场景 3:日志查询

场景 3:日志查询

bash
undefined
bash
undefined

查询 SLS 日志

查询 SLS 日志

aliyun sls GetLogs
--project my-project
--logstore my-logstore
--from $(date -d '1 hour ago' +%s)
--to $(date +%s)
--query "* | select *"
undefined
aliyun sls GetLogs
--project my-project
--logstore my-logstore
--from $(date -d '1 hour ago' +%s)
--to $(date +%s)
--query "* | select *"
undefined

故障排查

故障排查

问题排查方法
认证失败检查 AccessKey 配置
权限不足检查 RAM 策略
区域错误检查 RegionId
配额超限查看配额管理
bash
undefined
问题排查方法
认证失败检查 AccessKey 配置
权限不足检查 RAM 策略
区域错误检查 RegionId
配额超限查看配额管理
bash
undefined

调试模式

调试模式

aliyun ecs DescribeInstances --debug
aliyun ecs DescribeInstances --debug

查看帮助

查看帮助

aliyun help aliyun ecs DescribeInstances help
undefined
aliyun help aliyun ecs DescribeInstances help
undefined