雲助手可以自動地批量地執行日常維護命令,完成運行自動化營運指令碼、輪詢進程、安裝或者卸載軟體、更新應用以及安裝補丁等一些日常任務。您可以使用雲助手安全便捷地管理您的ECS執行個體。

應用情境

雲助手可幫您完成部署與營運任務,包括但不限於:

  • 運行自動化營運指令碼
  • 運行執行個體上已有的指令碼
  • 軟體生命週期管理
  • 部署代碼或者應用
  • 輪詢進程
  • 安裝補丁
  • 從OSS或者yum源擷取更新
  • 修改主機名稱或登入密碼

計費方式

雲助手是免費功能,不收取任何費用。但是雲助手是ECS執行個體的便捷部署與營運工具,使用ECS執行個體會產生計費,更多詳情,請參見計費概述

功能詳情

通過在執行個體中安裝雲助手用戶端,您可以在ECS管理主控台上或者調用API對運行中(Running)的一台以及多台執行個體調用bat或PowerShell(Windows執行個體)指令碼或者Shell指令碼(Linux執行個體)。多台執行個體間互相不影響。您也可以設定命令調用周期,使執行個體維持在某種狀態、擷取執行個體監控以及日誌資訊或者守護進程等。雲助手不會主動發起任何操作,所有的操作都在您的可控範圍內。

下表羅列了您需要瞭解的雲助手的常用名詞及其具體描述。

表 1. 雲助手常用名詞列表
常見名詞 說明
雲助手 雲助手官方名稱,可以幫您在ECS執行個體以及ECS Bare Metal Instance(神龍)執行個體上自動以及批量執行日常維護任務。所有阿里雲地區均支援雲助手服務。
雲助手用戶端 安裝在ECS執行個體中的輕量級外掛程式,Windows作業系統中任務進程名稱為AliyunService,Linux作業系統中任務進程名稱為aliyun.service。所有在執行個體中完成的命令都會通過用戶端完成。
命令 需要在執行個體中調用的具體命令操作,如一份Shell指令碼或者PowerShell指令碼。
自訂參數 您在命令中設定的變數值,以{{key}}的形式表示,可以在調用命令時以{{"key":"value"}}的形式設定自訂參數的值。由於您在一個地區下能保有的雲助手命令有配額限制,建議您通過設定自訂參數提高命令的靈活性以及多情境適用性。
單次調用 在一台或者多台執行個體中調用某個命令,即為一次調用(Invocation)。
周期調用 在一台或者多台執行個體中調用某個命令時,您可以指定調用時序/周期,周期性地調用命令進程。
調用狀態 命令調用狀態之間的關係。更多詳情,請參見命令啟動並執行生命週期

使用限制

  • 您需要以管理員的身份安裝和使用雲助手,其中Linux執行個體的管理員為root,Windows執行個體的管理員為administrator。
  • 在一個阿里雲地區下,您最多能保有100條雲助手命令。
  • 在一個阿里雲地區下,您每天最多能運行5000次雲助手命令。
  • 對於周期性雲助手命令,Timed設定間隔不能小於10秒。
  • 運行命令時,建立的bat、PowerShell或者Shell指令碼加上自訂參數在Base64編碼後,綜合大小不能超過16 KB。
  • 一條命令中,自訂參數的個數不能超過20個。
  • 目標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作業系統中運行雲助手命令。

命令啟動並執行生命週期

在一台執行個體上運行一條命令,命令會有以下狀態資訊:

表 2. 一條命令在一台執行個體上被調用的狀態
命令狀態 API狀態 狀態原因
調用中 Running 命令正在被調用。
停止 Stopped 您在命令調用過程中自行停止了命令。
調用完成 Finished 命令順利調用完成,調用完成並不代表調用成功,您需要根據命令進程的實際輸出資訊(Output)查看是否成功調用。
調用失敗 Failed 命令進程過了逾時時間(Timeout)後,因為各種原因未調用完成。

為便於管理批量調用或者周期調用,建議您從總執行狀態執行個體層級執行狀態以及執行記錄層級的狀態概念出發管理命令啟動並執行生命週期。狀態各層級之間的內含項目關聯性如下圖所示:

图 1. 狀態管理的內含項目關聯性示意圖


表 3. 單次批量調用命令的生命週期
狀態 命令運行 狀態顯示
總執行狀態 所有執行個體層級執行狀態均為執行完成Finished)時 執行完成

部分執行個體層級執行狀態為執行完成Finished

並且部分執行個體層級執行狀態為停止Stopped)時

所有執行個體層級執行狀態均為執行失敗Failed)時 執行失敗
所有執行個體層級執行狀態均為停止Stopped)時 停止
所有執行個體層級執行狀態均為執行中Running)或者部分執行個體層級執行狀態為執行中Running)時 執行中
部分執行個體層級執行狀態為執行失敗Failed)時 部分失敗
執行個體層級執行狀態 單次批量執行命令為一次性操作,所以執行個體層級執行狀態與執行記錄層級的狀態相同。
執行記錄層級的狀態 參見表格一條命令在一台執行個體上被調用的狀態

以三台ECS執行個體為例,下圖為多台執行個體同時做單次批量調用命令時,總執行狀態與執行個體層級執行狀態的關係。

图 2. 單次批量調用命令的生命週期示意圖


表 4. 周期命令調用的生命週期
狀態 狀態原因
總執行狀態 除使用者自行停止所有執行個體的執行之外,總執行狀態一直維持為執行中Running
執行個體層級執行狀態 除使用者自行停止之外,執行個體層級執行狀態一直維持為執行中Running
執行記錄層級的狀態 參見表格一條命令在一台執行個體上被調用的狀態

相關連結

您需要在ECS執行個體中安裝雲助手用戶端後才能使用雲助手。

雲助手實踐請參見雲助手自動化部署執行個體實踐

API操作: