Cloud Assistant の終了コードを使用して Elastic Compute Service (ECS) インスタンスを停止または再起動します。この操作は、コンソール、OpenAPI、および CloudOps Orchestration Service (OOS) を使用したバッチ処理で実行できます。
前提条件
-
インスタンスは実行中 状態です。
-
対象のインスタンスに Cloud Assistant Agent がインストールされていること。詳細については、「Cloud Assistant のステータスの表示」をご参照ください。エージェントがインストールされていない場合は、「Cloud Assistant Agent のインストール」をご参照ください。
(推奨) 終了コードを使用したインスタンスの停止または再起動
Cloud Assistant コマンドの末尾に終了コードを追加して、インスタンスを停止または再起動します。終了コードがない場合、Cloud Assistant Agent は実行結果を報告できず、コマンドのステータスが正しく更新されない可能性があります。
対象インスタンスの Cloud Assistant Agent は、以下のバージョンである必要があります:
-
Linux: 2.2.3.317
-
Windows: 2.2.3.317
エラーが発生した場合は、Cloud Assistant Agent を最新バージョンに更新してください。詳細については、「Cloud Assistant Agent のアップグレードまたは自動アップグレードの無効化」をご参照ください。
-
ECS コンソール - ECS クラウドアシスタントに移動します。
上部メニューで、対象リソースのリージョンとリソースグループを選択します。
-
コマンドの作成/実行 をクリックします。
-
コマンド情報 セクションで、パラメーターを設定します。 詳細については、「コマンドの作成と実行」をご参照ください。
-
コマンドの最後に、対応する終了コードを追加します。
-
インスタンスを停止するには、次のいずれかの終了コードを使用します。
オペレーティングシステム
終了コード
コマンド例
Linux
193
# この Shell コマンドは終了コード 193 を返し、インスタンスを停止するアクションをトリガーします。 exit 193Windows
3009
# この PowerShell コマンドは終了コード 3009 を返し、インスタンスを停止するアクションをトリガーします。 exit 3009 -
インスタンスを再起動するには、次のいずれかの終了コードを使用します。
オペレーティングシステム
終了コード
コマンド例
Linux
194
# この Shell コマンドは終了コード 194 を返し、インスタンスを再起動するアクションをトリガーします。 exit 194Windows
3010
# この PowerShell コマンドは終了コード 3010 を返し、インスタンスを再起動するアクションをトリガーします。 exit 3010
-
-
「インスタンスの選択」または「マネージドインスタンスの選択」セクションで、コマンドを実行するインスタンスを選択します。
説明マネージドインスタンスは Alibaba Cloud が提供するものではなく、Cloud Assistant が管理するインスタンスです。詳細については、「Alibaba Cloud マネージドインスタンス」をご参照ください。
-
実行して保存 または 実行 をクリックして、コマンドをすぐに実行します。
OpenAPI を使用したインスタンスの一括再起動
ローカルの Linux 環境で Python コードを実行して OpenAPI を呼び出し、コマンドを実行してインスタンスを一括で再起動します。
-
必要な情報を準備します。
-
RAM ユーザーの
アクセスキーペアを取得します。詳細については、「アクセスキーペアの作成」をご参照ください。 -
DescribeRegionsAPI を呼び出してリージョンのリストを取得します。詳細については、「DescribeRegions」をご参照ください。 -
DescribeInstancesAPI を呼び出して、指定された条件を満たすインスタンスをフィルターします。詳細については、「DescribeInstances」をご参照ください。
-
-
ローカル環境を設定し、サンプルコードを実行します。
-
Alibaba Cloud SDK for Python をインストールまたはアップグレードします。
sudo pip install --upgrade alibabacloud_ecs20140526 -
.pyファイルを作成し、次のサンプルコードを追加します。サンプルコードを表示するにはここをクリック
サンプルコードの次の値を、ご自身の値に置き換えます。
-
アクセスキー ID:
access_key = os.environ['ALIBABA_CLOUD_ACCESS_KEY_ID'] -
アクセスキーシークレット:
access_key_secret = os.environ['ALIBABA_CLOUD_ACCESS_KEY_SECRET'] -
リージョン ID:
region_id = '<yourRegionId>' -
インスタンス ID:
ins_ids= ["i-bp185fcs****","i-bp14wwh****","i-bp13jbr****"]
-
-
.pyファイルを実行します。次の図は結果を示しています。コマンドが 3 つのインスタンスで実行されて
helloworldが出力され、その後インスタンスが自動的に再起動します。
-
OOS を使用したインスタンスの一括再起動
CloudOps Orchestration Service (OOS) は、テンプレートを使用して運用保守タスクを自動化します。テンプレートでアクションを定義して実行することで、コマンドを実行し、インスタンスを一括で再起動します。
-
テンプレート設定ページに移動します。
-
OOS コンソールにログインします。
-
を選択します。
-
テンプレートの作成をクリックします。
-
-
テンプレートの設定を完了します。
-
テンプレートの作成 ページで、デフォルト設定のままにし、次へ をクリックします。
-
[YAML] タブをクリックし、次のコードを入力します。
サンプルコードを表示するにはここをクリック
-
テンプレートの作成 をクリックします。
-
表示されるダイアログボックスで、テンプレート名
runcommand_reboot_instancesを入力し、OK をクリックします。
-
-
テンプレートを実行します。
-
作成したテンプレートを見つけ、操作 列の エグゼキューションの作成 をクリックします。
-
実行設定を完了します。
パラメーター設定 ページで複数のインスタンスを選択し、その他の設定はデフォルト値のままにします。

-
OK ページで、作成 をクリックします。
テンプレートは自動的に実行されます。基本情報 ページで、実行ステータス が 成功 に変わるまで待ちます。
-
-
実行プロセスとタスクノードの詳細を表示します。
-
[実行手順と結果] で [実行フローチャートを表示] をクリックすると、実行プロセスが表示されます。

-
Cloud Assistant コマンドの実行ステップをクリックします。[ループタスクリスト] タブで、各タスクノードの実行詳細を表示します。

-