创建云助手命令后,您可以在一台或者多台ECS实例中执行命令。多台实例间的执行状态和执行结果互相不影响。
前提条件
执行云助手命令前,目标ECS实例必须满足以下条件:
- 状态处于运行中(
Running
)。
- 已安装云助手客户端。具体操作,请参见安装云助手客户端。
背景信息
- 调用API执行命令时最多可以选择50台实例。
- 通过ECS管理控制台一次执行命令操作的实例数量大于50台时,系统会自动分批执行命令。
- 在一个阿里云地域下,您每天最多能执行5000次云助手命令,配额随您的云服务器使用情况可能会增加。关于如何查询配额,请参见步骤一:查看资源配额。
说明 您也可以调用API
DescribeAccountAttributes,将参数
AttributeName.N设置为
max-axt-invocation-daily,查询一个地域下单天能运行的云助手命令次数上限。
控制台操作
- 登录ECS管理控制台。
- 在左侧导航栏,选择。
- 在顶部菜单栏左上角处,选择地域。
- 找到目标云助手命令,在右侧操作列中,单击执行。
- 在执行命令面板中,配置执行参数。
- 在命令信息中查看命令内容、设置命令参数和设置执行用户等。
名称 |
描述 |
命令内容 |
单击查看命令内容确认命令内容。 |
执行计划 |
选择命令执行时间。
- 立即执行:单击执行或执行并保存后,立即执行命令。
- 系统下一次启动后:单击执行或执行并保存后,实例下次启动时执行命令。
- 系统每次启动后:单击执行或执行并保存后,实例每次启动时执行命令。
|
执行用户 |
在ECS实例中执行命令的用户名称。 使用最小权限执行命令是权限管理的最佳实践,建议您以普通用户身份执行云助手命令。更多信息,请参见设置普通用户执行云助手命令。 默认情况下,在Linux实例中以root用户执行命令,在Windows实例中以System用户执行命令。 |
密码名称 |
选择托管在运维编排服务中的执行用户密码名称。仅在Windows实例中使用非System用户执行命令时,需要设置此参数。 如果您没有将执行用户的密码托管在运维编排服务,需要在运维编排服务的参数仓库中创建并托管密码。更多信息,请参见创建加密参数和配置Windows实例的普通用户执行云助手命令。 |
命令参数 |
在命令参数处的文本框内,填写命令中自定义参数的取值。参数取值无数据类型格式限制。如果自定义参数在当前调用中无需传入取值,您可以使用空字符串代替。
说明 如果您在新建命令时未选择
使用参数,执行命令时不会出现
命令参数的配置。
|
- 在选择实例和选择托管实例区域,选中一台或多台目标实例。
若实例过多,您可以在搜索框内输入实例ID、实例名称或标签等,并过滤云助手客户端的状态。
说明 托管实例是云助手托管的非阿里云服务器,更多信息,请参见
混合云托管服务器。
- 单击执行。
CLI示例
- 可选:检查实例状态,若实例的状态不是运行中(
Running
),调用StartInstance接口启动目标实例。
aliyun ecs StartInstance --InstanceId 'i-bp1f4f6o8lv0wqof****'
说明 半角单引号('')内为参数的示例取值,您需要根据实际情况修改。
更多信息,请参见StartInstance。
- 可选:调用DescribeCloudAssistantStatus接口查询目标实例是否安装了云助手客户端。
aliyun ecs DescribeCloudAssistantStatus --RegionId 'cn-hangzhou' \
--InstanceId.1 'i-bp1f4f6o8lv0wqof****'
- 调用InvokeCommand接口为一台或多台实例执行已创建的云助手命令,并获取返回参数InvokeId。
aliyun ecs InvokeCommand --RegionId 'cn-hangzhou' \
--InstanceId.1 'i-bp1f4f6o8lv0wqof****' \
--InstanceId.2 'i-bp137qu6142s3mhm****' \
--CommandId 'c-hz018qp243j****' \
--Timed 'false' \
--output cols=InvokeId
名称 |
示例 |
描述 |
RegionId |
cn-hangzhou |
地域ID。 |
InstanceId.1 |
i-bp1f4f6o8lv0wqof**** |
执行命令的第一个实例ID。 |
InstanceId.2 |
i-bp137qu6142s3mhm**** |
执行命令的第二个实例ID。 |
CommandId |
c-hz018qp243j**** |
命令ID。 |
Timed |
false |
命令是否为周期执行。 如果需要设置周期执行,Timed设置为true,且Frequency参数指定运行周期,例如0 */20 * * * *,表示每20分钟执行一次命令。 更多信息,请参见Cron表达式。 |
更多信息,请参见InvokeCommand。