云助手可以帮您自动地批量地执行日常维护命令,快速完成运行自动化运维脚本、轮询进程、安装或者卸载软件、更新应用以及安装补丁等一些日常任务。您可以使用云助手安全便捷地管理您的 ECS 实例。

计费方式

云助手是免费功能,不收取任何费用。

功能详情

通过在实例中安装云助手客户端,您可以在 ECS 管理控制台上或者调用 API 对运行中(Running)的一台以及多台实例执行 bat/PowerShell(Windows 实例)脚本或者 Shell 脚本(Linux 实例)。并且多台实例间互相不影响。您也可以设置命令执行周期,使实例维持在某种状态、获取实例监控以及日志信息或者守护进程等。云助手不会主动发起任何操作,所有的操作都在您的可控范围内。

下表罗列了您需要了解的云助手具体组成结构:

名词 常用名 描述
云助手 云助手 云助手官方名称,可以帮您自动以及批量执行日常维护任务。
云助手客户端 客户端 安装在实例中的客户端程序,任务进程包含在AliyunService中。所有在实例中完成的命令都会通过客户端完成。
命令 Command 需要在实例中执行的具体命令操作,如具体的 Shell 脚本。
单次执行 Invocation 在一台或者多台实例中执行某个命令,即为一次执行(Invocation)。
周期执行 Timed Invocation 在一台或者多台实例中执行某个命令时,您可以指定执行时序/周期,周期性地执行命令进程。
执行状态 InvokeStatus 命令执行状态之间的关系。执行状态分三个级别:
  • 总执行状态:某次命令执行时所有目标实例的执行状态总和。
  • 实例级别执行状态:某次命令执行时,针对某个特定实例的执行状态。
  • 执行记录级别的状态:在实例中执行具体某一次(如周期执行中的某一次执行)命令时,最终的执行情况。
更多详情,请参阅 执行状态

使用限制

使用云助手有如下限制:

  • 您需要以管理员的身份安装和使用云助手,其中 Linux 实例的管理员为 root,Windows 实例的管理员为 administrator。

  • 在一个阿里云地域下,您最多能创建 100 条云助手命令。
  • 在一个阿里云地域下,您每天最多能运行 500 次云助手命令。
  • 对于周期性云助手命令,Timed设定间隔不能小于 10 秒。
  • 创建的 bat/PowerShell 脚本或者 Shell 脚本的在 Base64 编码后大小不能超过 16 KB。
  • 目标 ECS 实例的状态必须处于 运行中Running)。
  • 其他使用云助手的限制条件有:
    支持的操作系统 支持的地域
    • Windows Server 2008/2012/2016
    • Ubuntu 12/14/16
    • CentOS 5/6/7
    • Debian 7/8/9
    • RedHat 5/6/7
    • SUSE Linux Enterprise Server 11/12
    • OpenSUSE
    • Aliyun Linux
    • CoreOS
    • 华东 1(杭州)
    • 华东 2(上海)
    • 华北 2(北京)
    • 华北 3(张家口)
    • 华南 1(深圳)
    • 香港
    • 亚太东南 1(新加坡)
    • 亚太东南 2(悉尼)
    • 亚太东南 3(吉隆坡)
    • 美国东部 1(弗吉尼亚)
    • 欧洲中部 1(法兰克福)

使用云助手

您需要在 ECS 实例中安装 云助手客户端 后才能使用云助手。

目前云助手暂时未开放控制台操作,您可以通过 API 使用云助手。API 操作示例请参阅使用 API 管理 ECS 实例之 使用云助手自动化管理实例

执行状态

  • 命令的执行状态微观上有四个状态,包括 执行中Running)、停止Stopped)、 执行完成Finished)和 执行失败Failed)。
  • 命令的执行状态宏观上有三个级别,包括 总执行状态实例级别执行状态 以及 执行记录级别的状态。各级别之间的关系如下图所示。

对于单次执行
  • 总执行状态
    • 所有实例级别执行状态均为 执行完成Finished)时,总执行状态显示为 执行完成Finished)。
    • 部分实例级别执行状态为 执行完成Finished)并且部分实例级别执行状态为 停止Stopped)时,总执行状态显示为 执行完成Finished)。
    • 所有实例级别执行状态均为 执行失败Failed)时,总执行状态显示为 执行失败Failed)。
    • 所有实例级别执行状态均为 停止Stopped)时, 总执行状态显示为 停止Stopped)。
    • 所有实例级别执行状态均为 执行中Running)或者部分实例级别执行状态为 执行中Running)时,总执行状态显示为 执行中Running)。
    • 部分实例级别执行状态为 执行失败Failed)时,总执行状态都显示为 部分失败PartialFailed)。

      以三台 ECS 实例为例,下图为多台实例同时做单次执行时,总执行状态与实例级别执行状态的关系。



  • 实例级别执行状态:单次执行因为只执行一次,所以实例级别执行状态与执行记录级别的状态保持完全相同。
  • 执行记录级别的状态
    • 执行中(Running):表明命令正在被执行。
    • 停止(Stopped):表明命令在执行时被用户手动停止。
    • 执行完成(Finished):表明命令顺利执行完成,执行完成并不代表执行成功,您需要根据命令进程的实际输出信息(Output)查看是否成功执行。
    • 执行失败(Failed):表明命令进程过了超时时间(Timeout)后,因为各种原因未执行完成。
对于周期执行
  • 总执行状态:除用户手动停止所有实例的执行之外,总执行状态一直维持为 执行中Running)。
  • 实例级别执行状态:除用户手动停止之外,实例级别执行状态一直维持为 执行中Running)。
  • 执行记录级别的状态
    • 执行中(Running):表明命令正在被执行。
    • 停止(Stopped):表明命令在执行时被用户手动停止。
    • 执行完成(Finished):表明命令顺利执行完成,执行完成并不代表执行成功,您需要根据命令进程的实际输出信息(Output)查看是否成功执行。
    • 执行失败(Failed):表明命令进程过了超时时间(Timeout)后,因为各种原因未执行完成。

相关链接

如果您在使用云助手时有相关的问题或反馈,可以 添加云助手专项支持钉钉群 联系阿里云技术支持。