创建云助手命令后,您可以在一台或者多台ECS实例中执行命令。多台实例间的执行状态和执行结果互相不影响。
前提条件
执行云助手命令前,目标ECS实例必须满足以下条件:
-
状态处于运行中(
Running
)。 -
已安装云助手Agent。具体操作,请参见安装云助手Agent。
使用定时任务的新特性(固定时间间隔执行、仅在指定时间执行一次、基于Cron表达式定时执行时指定年份或时区)时,需确保云助手Agent不低于以下版本:
-
Linux:2.2.3.282
-
Windows:2.1.3.282
如果执行定时任务结果返回
ClientNeedUpgrade
错误码,请将客户端更新至最新版本。具体操作,请参见升级或禁止升级云助手Agent。 -
背景信息
-
调用API执行命令时最多可以选择50台实例。
-
通过ECS管理控制台一次执行命令操作的实例数量大于50台时,系统会自动分批执行命令。
操作步骤
通过控制台执行命令
-
登录ECS管理控制台。
-
在左侧导航栏,选择运维与监控 > 云助手。
-
在页面左侧顶部,选择目标资源所在的资源组和地域。
-
在命令列表页签中,找到目标云助手命令,在操作列中,单击执行。
-
在执行命令对话框中,配置执行参数。
-
在命令信息中查看命令内容、设置命令参数和设置执行用户等。
名称
描述
命令内容
单击查看命令内容确认命令内容。
执行计划
选择命令执行计划。
-
立即执行:单击执行或执行并保存后,系统立即执行命令。
-
系统下一次启动后:单击执行或执行并保存后,实例下次启动时执行命令。
-
系统每次启动后:单击执行或执行并保存后,实例每次启动时执行命令。
-
定时执行:单击执行或执行并保存后,系统在设置的时间间隔或者时间点执行命令。定时执行包括以下几种方式:
-
固定时间间隔执行:基于Rate表达式,按照设置的时间间隔执行命令。时间间隔支持按秒、分钟、小时和天来选择,适用于在固定时间间隔执行任务的场景。
说明
固定时间间隔执行有以下限制条件:
-
设置的时间间隔不大于7天、不小于60秒,且需大于定时任务的超时时间。
-
执行间隔只基于固定频率,与任务实际执行需要的时间无关。例如设置每5分钟执行一次命令,任务需要2分钟执行完成,则在任务完成3分钟后继续执行下一轮。
-
创建任务时不会立即执行。例如设置每5分钟执行一次命令,创建任务时不会立即执行一次命令,而是在任务创建完成后的5分钟后开始执行。
-
-
仅在指定时间执行一次:按照设置的时区和执行时间点执行一次命令。
例如设置执行时间为2022-05-17 17:30:50,时区为(GMT+8:00) Asia/Shanghai,即表示系统会在中国/上海时间,2022年05月17日17点30分50秒执行一次命令。
-
基于时钟定时执行:基于Cron表达式,按照设置的定时任务执行命令。重复频率可精确到秒、分钟、小时、日期、月份、星期、年份,在指定的时区下,根据Cron表达式推算定时任务执行时间并执行。配置灵活,适用于较复杂的定时任务执行场景。关于Cron表达式的更多信息,请参见Cron表达式。
说明
设置的最小时间间隔需大于或等于定时任务的超时时间,且不小于10 秒。
例如设置重复频率为0 0 12 ? * WED 2022,时区为(GMT+8:00) Asia/Shanghai,即表示系统会在中国/上海时间,2022年每个星期三中午12:00执行命令。
-
执行用户
在ECS实例中执行命令的用户名称。
使用最小权限执行命令是权限管理的最佳实践,建议您以普通用户身份执行云助手命令。更多信息,请参见设置普通用户执行云助手命令。
默认情况下,在Linux实例中以root用户执行命令,在Windows实例中以System用户执行命令。
超时时间
设置命令在实例中执行的超时时间,当执行命令的任务超时后,云助手将强制终止任务进程。
单位为秒,默认为您创建命令时设置的超时时间。
说明
该值仅作为该次命令执行的超时时间,不会改变命令本身设置的超时时间。
标签
设置命令执行的标签键和标签值,方便后续分类管理维护。
-
-
在选择实例和选择托管实例区域,选中一台或多台目标实例。
如果实例过多,您可以在搜索框内输入实例ID、实例名称或标签等,并过滤云助手Agent的状态。
说明
托管实例是云助手托管的非阿里云服务器,更多信息,请参见阿里云托管实例。
-
-
单击执行。
通过CLI执行命令
通过CLI执行命令时,请确保您已经为本地客户端安装了阿里云CLI,在不同操作系统中安装CLI的方式如下:
-
在Windows上安装阿里云CLI
-
在Linux上安装阿里云CLI
-
在macOS上安装阿里云CLI
-
(可选)检查实例状态,若实例的状态不是运行中(
Running
),调用StartInstance接口启动目标实例。aliyun ecs StartInstance --InstanceId 'i-bp1f4f6o8lv0wqof****'
说明
半角单引号(”)内为参数的示例取值,您需要根据实际情况修改。
更多参数说明,请参见StartInstance。
-
(可选)调用DescribeCloudAssistantStatus接口查询目标实例是否安装了云助手Agent。
aliyun ecs DescribeCloudAssistantStatus --RegionId 'cn-hangzhou' \ --InstanceId.1 'i-bp1f4f6o8lv0wqof****'
返回
CloudAssistantStatus=true
结果时,表示实例已安装云助手Agent。否则,请调用InstallCloudAssistant接口为实例安装客户端。更多信息,请参见DescribeCloudAssistantStatus和InstallCloudAssistant。 -
调用InvokeCommand接口为一台或多台实例执行已创建的云助手命令。
aliyun ecs InvokeCommand --RegionId 'cn-hangzhou' \ --InstanceId.1 'i-bp1f4f6o8lv0wqof****' \ --InstanceId.2 'i-bp137qu6142s3mhm****' \ --CommandId 'c-hz018qp243j****' \ --Timed 'false'
主要参数如下表所示,更多参数说明,请参见InvokeCommand。
名称
示例
描述
RegionId
cn-hangzhou
地域ID。
InstanceId.1
i-bp1f4f6o8lv0wqof****
执行命令的第一个实例ID。
InstanceId.2
i-bp137qu6142s3mhm****
执行命令的第二个实例ID。
CommandId
c-hz018qp243j****
命令ID。
Timed
false
命令是否为定时执行。
如果需要设置定时执行,Timed设置为true,且Frequency参数指定执行时间。目前支持三种定时执行方式:固定时间间隔执行(基于Rate表达式)、仅在指定时间执行一次、基于时钟定时执行(基于Cron表达式)。例如您指定了Cron表达式:
0 */20 * * * ?
,表示每20分钟执行一次命令。更多信息,请参见Cron表达式。
相关文档
-
查看执行结果及修复常见问题
-
查询您在一个阿里云地域下能创建的ECS资源配额:DescribeAccountAttributes
-
为一台或多台ECS实例触发一条云助手命令:InvokeCommand
关于阿里云ecs服务器的内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家
阿里云企业补贴进行中: 马上申请
腾讯云限时活动1折起,即将结束: 马上收藏
同尘科技为腾讯云授权服务中心。
购买腾讯云产品享受折上折,更有现金返利:同意关联,立享优惠
本文来自投稿,不代表新手站长_郑州云淘科技有限公司立场,如若转载,请注明出处:https://www.cnzhanzhang.com/9752.html