公共命令是由阿里云提供給所有用戶使用的云助手命令,適用于軟件的安裝或卸載、實例狀態診斷、密鑰輪轉等場景。本文為您介紹如何查看和執行云助手公共命令。
背景信息
公共命令是阿里云創建的云助手命令,對所有阿里云用戶可見。通常包含一些比較復雜的服務器配置、健康或安全檢測、應用安裝、文件處理、系統補丁安裝、更改系統配置、服務或應用管理的腳本,以及云助手插件(包含腳本或可執行程序)。
相比較普通命令,公共命令的內容、發布以及升級會由阿里云統一負責維護。公共命令發布后,您可以直接查看命令的詳細內容,并可以在ECS實例上執行命令及查看執行進度和結果,例如,一鍵升級Linux實例中的云助手Agent、一鍵安裝Java、一鍵診斷Linux實例是否需要進行磁盤擴容操作等。使用公共命令,可以快速地完成某些復雜配置,很大程度提升您的操作和運維效率。
操作步驟
您可以根據需要選擇以下任意方式查看和執行公共命令。
ECS管理控制臺方式
登錄ECS管理控制臺。
在左側導航欄,選擇 。
在頁面左側頂部,選擇目標資源所在的資源組和地域。
在ECS云助手頁面,單擊公共命令頁簽。
在該頁簽下,您可以使用當前阿里云官方提供的公共命令。
找到待執行的公共命令,單擊執行。
說明公共命令首頁僅展示最新版本的公共命令,若需要查看或執行歷史版本的公共命令,請找到對應的公共命令并單擊命令ID進入命令詳情頁操作。
在執行命令面板中,配置相關參數并單擊執行。
主要配置參數如下所示:
說明執行公共命令所需配置參數的更多信息,請參見通過控制臺執行命令。
區域
參數名稱
描述
命令信息
命令內容
單擊查看命令內容確認命令內容。
執行計劃
選擇公共命令的執行計劃,選擇項如下所示:
立即執行
系統下一次啟動后
系統每次啟動后
定時執行
關于執行計劃的更多信息,請參見執行計劃詳細信息。
執行用戶
在ECS實例中執行命令的用戶名稱,例如root。
默認情況下,在Linux實例中以root用戶執行命令,在Windows實例中以System用戶執行命令。
超時時間
請輸入正整數,可設定超時范圍為10~86400秒(24小時),超時后,會強制終止發送進程(默認為命令本身的超時時間)。
命令參數
如果頁面出現命令參數項,請您在對應文本框中輸入自定義參數值,具體以實際面板顯示為準。
說明若公共命令提供方提供了參數描述、默認值或可選值,請按照提示填寫。若參數為必填項,您需要輸入具體參數值才可以執行。
選擇實例
-
選擇一臺或多臺需要執行命令的實例,該實例需處于運行中狀態且已安裝云助手的客戶端。
選擇托管實例
-
選擇要執行命令的托管實例,托管實例需處于連接狀態且已安裝云助手的客戶端。
說明托管實例是云助手托管的非阿里云服務器,更多信息,請參見阿里云托管實例。
在命令執行結果頁簽下,找到已執行成功的公共命令,單擊對應操作列下的查看。
在執行詳情頁面,實例的執行狀態為執行成功時,可查看公共命令的執行輸出結果。
說明如果公共命令執行失敗,請查看錯誤信息并根據診斷信息修復問題,更多信息,請參見執行失敗常見錯誤及修復建議。
OpenAPI方式
查看公共命令。
您可以通過調用DescribeCommands接口查看公共命令,還可以直接使用公共命令名稱進行查詢。
查看公共命令時,請注意以下參數:
Name:命令的名稱。以查看杭州地域的公共命令ACS-ECS-DiskResize-Diagnostic-for-linux.sh為例,命令名稱為ACS-ECS-DiskResize-Diagnostic-for-linux.sh。
Provider:公共命令提供者。當該參數取值為AlibabaCloud時,表示查詢由阿里云提供的所有公共命令。
執行公共命令。
根據上述步驟1返回的
CommandId
參數值,您可以通過調用InvokeCommand執行云助手公共命令,還可以直接使用命令名稱執行公共命令,公共命令的名稱在不同地域是相同的。執行公共命令時,請注意以下參數:
CommandId:命令ID。對于公共命令,CommandId可以填入公共命令名稱執行。在本例中,取值為ACS-ECS-DiskResize-Diagnostic-for-linux.sh。
調用成功后,會獲取一個返回參數InvokeId(例如
t-hz02kwqc9pg****
),即公共命令的執行ID。您可以調用DescribeInvocations或DescribeInvocationResults接口查詢云助手命令執行結果。您也可以在公共命令執行詳情頁的輸出結果中,查看本示例中Linux實例是否需要進行磁盤擴容操作的詳細說明。
CLI方式
通過CLI查看公共命令。
您可以通過DescribeCommands接口查看公共命令。
當
Provider
參數為AlibabaCloud
時,表示查詢由阿里云提供的所有公共命令。當該參數的取值為具體的公共命令提供者時,查詢該提供者提供的所有公共命令。
以杭州地域為例,查詢阿里云提供的所有公共命令示例如下所示:
aliyun ecs DescribeCommands \ --region 'cn-hangzhou' \ --RegionId 'cn-hangzhou' \ --Provider 'AlibabaCloud'
以查詢杭州地域的公共命令
ACS-ECS-DiskResize-Diagnostic-for-linux.sh
為例,該公共命令用來診斷Linux實例是否需要進行磁盤擴容操作。示例如下所示:aliyun ecs DescribeCommands \ --region 'cn-hangzhou' \ --RegionId 'cn-hangzhou' \ --CommandId 'ACS-ECS-DiskResize-Diagnostic-for-linux.sh'
通過CLI執行公共命令。
調用InvokeCommand接口為一臺或多臺ECS實例執行云助手公共命令。
以公共命令
ACS-ECS-DiskResize-Diagnostic-for-linux.sh
為例,該公共命令用來診斷Linux實例是否需要進行磁盤擴容操作。示例如下所示:aliyun ecs InvokeCommand --RegionId 'cn-hangzhou' \ --InstanceId.1 'i-bp1f4f6o8lv0wqof****' \ --InstanceId.2 'i-bp137qu6142s3mhm****' \ --CommandId 'ACS-ECS-DiskResize-Diagnostic-for-linux.sh' \ --Timed 'false'
調用成功后,會獲取一個返回參數
InvokeId
(例如t-hz03rj5u0jx****
),即公共命令的執行ID。您可以調用DescribeInvocations或DescribeInvocationResults接口查詢云助手命令執行結果。示例如下所示:aliyun ecs DescribeInvocations --RegionId 'cn-hangzhou' \ --InvokeId 't-hz03rj5u0jx****'
您也可以在公共命令執行詳情頁的輸出結果中,查看本示例中Linux實例是否需要進行磁盤擴容操作的詳細說明。