クラウドアシスタントは、追加コストなしで、Bastion ホストを介さずに複数の ECS インスタンスで Shell、PowerShell、および Bat コマンドを実行できます。
機能
-
バッチ操作: 複数のインスタンスで同時にコマンドを実行します。各インスタンスでの実行は独立しており、1 つのインスタンスで失敗しても他のインスタンスには影響しません。
-
ファイルアップロード: 構成ファイル、スクリプト、その他のアセットをインスタンスに送信します。
-
パブリックコマンド: セキュリティ監査、OS パッチ適用、アプリケーションインストールなどの共通タスク向けに事前構築されたスクリプトおよびプラグインを提供します。
-
パラメーター化コマンド: カスタムまたは組み込みのパラメーターを定義して、再利用可能なコマンドテンプレートを作成できます。単一のテンプレートで、実行時に異なる値を注入することで複数のシナリオに対応します。
-
セキュリティと制御: クラウドアシスタントは独自にアクションを開始することはありません。すべての操作について、ユーザーが完全制御を保持します。
利用シーン
-
ソフトウェアデプロイメント: アプリケーションコード、構成更新、修正プログラムを一度の操作で複数のインスタンスにプッシュします。
-
セキュリティパッチ適用: 個別にログインすることなく、すべてのインスタンスに OS パッチやセキュリティ更新プログラムを展開します。
-
ソフトウェアライフサイクル管理: 複数のインスタンスにわたるソフトウェア開発ライフサイクルを管理します。
-
インスタンス構成: ホスト名の変更やユーザー認証情報のリセットをバッチで実行します。
-
プロセスモニタリング: 複数のインスタンスにわたってプロセスの状態やサービスの正常性をポーリングし、結果を一元的に収集します。
-
パッケージ管理: OSS または YUM リポジトリから更新プログラムを取得してインストールします。
一般的な操作
次の表では、一般的なタスクと対応するドキュメントおよび API リファレンスを示します。
|
タスク |
ドキュメント |
API |
|
エージェントのインストール |
||
|
SDK の使用 |
-- |
|
|
コマンドの作成 |
||
|
コマンドの実行 |
||
|
結果の確認 |
||
|
コマンドの変更 |
-- |
|
|
コマンドのクローン |
-- |
|
|
コマンドの停止 |
||
|
コマンドの削除 |
クラウドアシスタントエージェントは、2017 年 12 月 1 日以降にパブリックイメージから作成された ECS インスタンスにプリインストール済みです。
インスタンス要件
-
インスタンスは Running 状態である必要があります。
-
クラウドアシスタントエージェントをインストールする必要があります。このエージェントは、2017 年 12 月 1 日以降にパブリックイメージから作成されたインスタンスにプリインストール済みです。カスタムイメージまたは Alibaba Cloud Marketplace のイメージの場合は、互換性を確認し、必要に応じてクラウドアシスタントエージェントをインストールしてください。
サポートされるオペレーティングシステム
Linux
-
Alibaba Cloud Linux
-
CentOS 6、7、8 以降
-
CoreOS
-
version.ini— エージェントのバージョン構成。 -
OpenSUSE
-
Red Hat 5、6、7 以降
説明Red Hat では、手動による RPM インストールが必要です。詳細については、「クラウドアシスタントエージェントをインストールする」をご参照ください。
-
SUSE Linux Enterprise Server 11、12、15 以降
-
Ubuntu 12、14、16、18 以降
-
FreeBSD 11、12、13、14 以降
Windows
-
Windows Server 2012、2016、2019 以降
ペイロードおよびパラメーターの制限
すべてのサイズは Base64 エンコードされたペイロードを基準としています。
|
操作 |
最大サイズ |
|
[コマンドの作成] |
18 KB |
|
[即時実行](コマンドを保存) |
18 KB |
|
[即時実行](保存しない) |
24 KB |
|
[ファイルのアップロード] |
32 KB |
各コマンドは最大 20 個のカスタムパラメーターをサポートします。
機能の互換性マトリックス
一部の機能には、最小のクラウドアシスタントエージェントバージョンが必要です。
|
機能 |
最小バージョン (Linux) |
最小バージョン (Windows) |
|
Agent heartbeat reporting |
1.0.2.458 |
1.0.0.149 |
|
File distribution |
1.0.2.569 |
1.0.0.149 |
|
Run as specific user |
2.2.0.106 |
2.1.0.50 |
|
Run on next boot |
2.2.0.46 |
2.1.0.50 |
|
Run on every boot |
2.2.0.46 |
2.1.0.50 |
|
Session Manager support |
2.2.3.196 |
2.1.3.196 |
|
Scheduled tasks (Rate/At expressions) |
2.2.3.282 |
2.1.3.282 |
|
Scheduled tasks (Cron with year/timezone) |
2.2.3.282 |
2.1.3.282 |
|
Built-in environment parameters |
2.2.3.309 |
2.1.3.309 |
|
Instance names as parameter |
2.2.3.344 |
2.1.3.344 |
|
Stop or restart via exit code |
2.2.3.317 |
2.1.3.317 |
|
Container execution (by name) |
2.2.3.344 |
2.1.3.344 |
|
Container execution (by ID) |
2.2.3.344 |
2.1.3.344 |
課金
クラウドアシスタント自体は無料です。タスク実行中に消費された ECS リソース (コンピューティング、ネットワーク、ストレージ) のみが課金されます。「課金概要」をご参照ください。
リソースオーバーヘッド
クラウドアシスタントエージェントは、インスタンスのパフォーマンスにほとんど影響を与えません。
|
リソース |
Linux |
Windows |
|
CPU |
< 1% の平均利用率 |
< 1% の平均利用率 |
|
物理メモリ |
約 20 MB |
約 30 MB |
|
Disk I/O |
ごくわずか(スペックアップ時またはスクリプト保存時のみピークあり) |
ごくわずか(アップグレード時またはスクリプト保存時のピークを除く) |
|
Network I/O |
最小限(ハートビートトラフィックのみ) |
最小限(ハートビートトラフィックのみ) |
コマンド実行ステータス
クラウドアシスタントは、インスタンスレベル(インスタンスごとのステータス)と呼び出しレベル(バッチ内のすべての対象インスタンスにわたる集計ステータス)の 2 つのレベルで実行を追跡します。

インスタンスレベルのステータス
これらのステータスは、DescribeInvocations の InvokeInstance 内の InvocationStatus フィールド、または DescribeInvocationResults の InvocationStatus フィールドに対応しています。
|
ステータスコード |
説明 |
|
|
システムがコマンドを検証中または送信中です。 |
|
|
無効なコマンドタイプまたはパラメーターです。 |
|
|
送信に失敗しました。インスタンスは |
|
|
インスタンスでコマンドが実行中です。 |
|
|
終了コード 0 で完了しました。定期タスクの場合、最後の実行が終了コード 0 で完了し、スケジュールが終了しています。 |
|
|
ゼロ以外の終了コードで完了しました。定期タスクの場合、最後の実行でゼロ以外の終了コードが返されると、タスクが中止されます。 |
|
|
例外が発生しました。 |
|
|
指定されたタイムアウト期間を超えました。 |
|
|
実行開始前にキャンセルされました。 |
|
|
停止リクエストが送信され、実行が停止中です。 |
|
|
手動で停止されました。 |
|
|
ランタイム中に終了されました。 |
|
|
次のスケジュールされた実行ウィンドウを待機中です。 |
呼び出しレベルのステータス
バッチコマンドの場合、クラウドアシスタントはインスタンスステータスを集約し、DescribeInvocations の InvocationStatus フィールドに返される単一の呼び出しステータスにまとめます。
|
ステータスコード |
集計ルール |
|
|
少なくとも 1 つのインスタンスが |
|
|
少なくとも 1 つのインスタンスが |
|
|
少なくとも 1 つのインスタンスが |
|
|
すべてのインスタンスが完了しました。少なくとも 1 つが |
|
|
すべてのインスタンスが完了しましたが、成功したインスタンスはありません。 |
|
|
少なくとも 1 つのインスタンスが |
|
|
すべてのインスタンスが |
|
|
すべてのインスタンスが完了しましたが、結果が混在しています。一部は成功し、一部は失敗または停止しています。 |
権限 (RAM)
Alibaba Cloud アカウントは、デフォルトでクラウドアシスタントへのフルアクセス権を持ちます。本番環境で使用する場合は、RAM ユーザーを作成し、必要な権限のみを付与してください。詳細については、「RAM ユーザーにクラウドアシスタントの使用権限を付与する」をご参照ください。
エージェントのアーキテクチャおよびディレクトリ構造
Linux
クラウドアシスタントエージェントは、/usr/local/share/aliyun-assist/ にインストールされます。
-
/usr/local/share/aliyun-assist/-
2.x.x.xxx/— バージョン固有のディレクトリ(例:2.2.4.965/)。-
aliyun-service— コアエージェントバイナリ。 -
assist_daemon—aliyun-serviceを監視し、クラッシュした場合に再起動するデーモン(ウォッチドッグ)。 -
acs-plugin-manager— プラグイン管理ユーティリティ。 -
aliyun_assist_update— 自動更新ユーティリティ。 -
aliyun_installer— 非推奨。acs-plugin-managerに置き換えられています。 -
config/-
GlobalSignRootCA.crt— HTTPS 通信のためのルート証明書。 -
hash_file— 整合性検証のための暗号ハッシュ。
-
-
init/-
install、uninstall、clean— インストール、アンインストール、およびクリーンアップスクリプト。 -
version— 現在のエージェントバージョン。
-
-
log/-
aliyun_assist_main.log— アクティブなログファイル(当日分)。 -
aliyun_assist_main.log.YYYYMMDD— アーカイブされたログ(日次ローテーション)。
-
-
plugin/-
ACS-ECS-SysInfoGatherer— 事前インストール済みのシステム情報収集プラグイン。
-
-
-
cache/-
state_configs.json— CloudOps Orchestration Service (OOS) 在庫収集用のキャッシュ構成。
-
-
config/-
task_sign_certs/— タスクのデジタル署名検証用の公開鍵。
-
-
hybrid/-
hardwareHash— ホストインスタンス登録用のハードウェア指紋。
-
-
plugin/-
installed_plugins.db— インストール済みプラグインのデータベース。
-
-
work/-
script/— 実行スクリプトの一時格納ディレクトリ。説明バージョン 2.x.3.704 以降、クラウドアシスタントはデフォルトで実行スクリプトをディスクに保存しなくなりました。このディレクトリで実行済みファイルを表示するには、スクリプト保存機能を手動で有効にする必要があります。
-
-
region-id— インスタンスのリージョン ID。
-
Windows
クラウドアシスタントエージェントは、C:\ProgramData\aliyun\assist\ にインストールされます。
-
C:\ProgramData\aliyun\assist\-
2.x.x.xxx/— バージョン固有のディレクトリ(例:2.1.4.965)。-
aliyun_assist_service.exe— コアエージェントバイナリ。 -
acs-plugin-manager.exe— プラグイン管理ユーティリティ。 -
aliyun_assist_update.exe— 自動更新ユーティリティ。 -
aliyun_installer.exe— インストーラープログラム。 -
install.bat、install.exe— インストールスクリプト。 -
PatchGo.dll— Windows Server 2008 向けの Go 時計ドリフト軽減用ランタイムパッチ。 -
version.ini— エージェントバージョン構成。 -
config/-
GlobalSignRootCA.crt— HTTPS 通信のためのルート証明書。 -
hash_file— 整合性検証のための暗号ハッシュ。
-
-
log/-
aliyun_assist_main.log— アクティブなログファイル(当日分)。 -
aliyun_assist_main.log.YYYYMMDD— アーカイブされたログ(日次ローテーション)。
-
-
plugin/-
ACS-ECS-SysInfoGatherer— システム情報収集プラグイン。 -
SessionManager— パスワード不要のセッション管理プラグイン。 -
installed_plugins.db— インストール済みプラグインのデータベース。
-
-
-
cache/-
state_configs.json— OOS 在庫収集用のキャッシュ構成。
-
-
config/-
task_sign_certs/— タスク署名検証用の公開鍵。
-
-
hybrid/— ホストインスタンス登録データ。 -
plugin/-
installed_plugins.db— プラグインデータベース。
-
-
work/-
script/— 実行スクリプトの一時格納ディレクトリ。説明バージョン 2.x.3.704 以降、クラウドアシスタントはデフォルトで実行スクリプトをディスクに保存しなくなりました。このディレクトリで実行済みファイルを表示するには、スクリプト保存機能を手動で有効にする必要があります。
-
-
config.ini— 現在のエージェントバージョンを含むグローバル構成。 -
region-id— インスタンスのリージョン ID。 -
version— 現在のエージェントバージョン。
-
用語
|
用語 |
説明 |
|
Cloud Assistant |
サービス。Alibaba Cloud のすべてのリージョンで利用可能です。 |
|
Cloud Assistant Agent |
各インスタンス上のクライアントバイナリ。プロセス名: |
|
AssistDaemon |
エージェントがクラッシュした場合に監視して再起動するウォッチドッグ。Linux のみ。サービス名: |
|
Working directory |
スクリプトが一時的に格納されるパス(スクリプト保存が有効な場合)。Linux: |
|
Command |
インスタンスに送信される操作ペイロード。タイプ:Shell、PowerShell、Bat。 |
|
Custom parameter |
|
|
One-time execution |
1 つまたは複数のインスタンスでの単一の実行イベント(呼び出しとも呼ばれます)。 |
|
Scheduled execution |
定期的に実行するように構成されたコマンド。 |