Cloud Assistantコマンドを作成した後、1つ以上のElastic Compute Service (ECS) インスタンスでコマンドを実行できます。 複数インスタンスでのコマンドの実行状態と実行結果は相互に影響しません。
前提条件
ECSインスタンスでCloud Assistantコマンドを実行する前に、インスタンスが次の要件を満たしていることを確認してください。
インスタンスの状態は [実行中] です。
Cloud Assistant Agentがインスタンスにインストールされています。 詳細については、「Cloud Assistant Agentのインストール」をご参照ください。
スケジュールされたタスクを期待どおりに実行できるようにするには、Cloud Assistant Agentのバージョンが次のバージョンより前でないことを確認します。 スケジュールされたタスクは、特定の間隔でコマンドを実行したり、特定の時間に1回だけコマンドを実行したり、特定の年またはタイムゾーンを持つcron式で指定されたスケジュールに基づいてコマンドを実行したりできます。
Linux: 2.2.3.282
Windows: 2.1.3.282
ClientNeedUpgrade
エラーコードが返された場合は、Cloud Assistant Agentを最新バージョンに更新します。 詳細については、「Cloud Assistant Agentのアップグレードまたは無効化」をご参照ください。
背景情報
APIを呼び出して、1回のリクエストで最大100個のインスタンスでコマンドを実行できます。 「コマンド実行でサポートされるインスタンスの最大数」という名前のクォータは、コマンドが1回の実行で実行できるインスタンスの最大数を指定します。 クォータの増加を申請できます。 リソースのクォータを表示および増やす方法については、「クォータの管理」をご参照ください。
ECSコンソールでコマンドを実行するために100を超えるインスタンスを選択した場合、システムはインスタンスに対してコマンドをバッチで実行します。
手順
ECSコンソールでのコマンドの実行
左側のナビゲーションウィンドウで、 .
上部のナビゲーションバーで、リソースが属するリージョンとリソースグループを選択します。
[マイコマンド] タブをクリックし、実行するCloud Assistantコマンドを見つけて、[アクション] 列の [実行] をクリックします。
[コマンドの実行] パネルで、コマンドのパラメーターを指定します。
[コマンド情報] セクションで、コマンドの内容を確認し、パラメーターを設定します。 下表に、各パラメーターを説明します。
パラメーター
説明
コマンドの内容
[コマンド内容の表示] をクリックして、コマンド内容を表示します。
実行プラン
コマンドをいつ実行するかについての計画を選択します。
すぐに実行: [実行] をクリックすると、コマンドがすぐに実行されます。
[システムの次回の起動後]: [実行] をクリックすると、次に関連付けられたインスタンスが起動したときにコマンドが実行されます。
各システム起動後: [実行] をクリックすると、関連するインスタンスが起動するたびにコマンドが実行されます。
[スケジュールで実行]: [実行] をクリックすると、特定の間隔、特定の時間、またはスケジュールでコマンドが実行されます。 次の実行スケジュールオプションを使用できます。
固定間隔で実行: レート式を使用して、コマンドを実行する間隔を指定します。 間隔は、秒、分、時間、または日で指定できます。 このオプションは、一定の間隔でコマンド実行タスクを実行するシナリオに適しています。
説明間隔を指定するときは、次の制限に注意してください。
指定された間隔は60秒から7日の範囲で、スケジュールされたタスクのタイムアウト期間より長くする必要があります。
間隔は、2つの連続した実行の間に経過する時間である。 この間隔は、コマンドを1回実行するのに必要な時間とは無関係です。 たとえば、間隔を5分に設定し、コマンドを1回実行するには2分かかります。 コマンドが実行されるたびに、システムはコマンドを再実行する前に3分間待機します。
タスクを作成した後、タスクはすぐには実行されません。 たとえば、間隔を5分に設定し、コマンドを実行するタスクを作成します。 タスクは作成後5分で実行されます。
指定した時間に1回だけ実行: コマンドを1回だけ実行する時点とタイムゾーンを指定します。
たとえば、[実行時間] パラメーターを5月17日2022 17:30:50に設定し、[タイムゾーン] パラメーターを (GMT + 08:00) Asia/Shanghaiに設定した場合、コマンドは2022年5月17日 (UTC + 8) の17:3050に1回だけ実行されました。
クロックベースのスケジュールCron式で実行: cron式を使用して、コマンドを実行するスケジュールを指定します。 秒、分、時間、月、月、曜日、または年の正確なスケジュールを指定し、[タイムゾーン] ドロップダウンリストからタイムゾーンを選択します。 システムはcron式とタイムゾーンに基づいてスケジュールを計算し、スケジュールどおりにコマンドを実行します。 このオプションは柔軟性を提供し、スケジュールに従ってコマンドタスクを実行するシナリオに適しています。 cron式の詳細については、「Cron式」をご参照ください。
説明最小間隔は10秒以上である必要があり、スケジュールされた実行のタイムアウト期間より短くすることはできません。
たとえば、[実行頻度] パラメーターを0 0 12? * WED 2022、タイムゾーンパラメーターを (GMT + 08:00) Asia/Shanghaiに設定すると、システムは毎週水曜日の12:00:00に2022 (UTC + 8) でコマンドを実行します。
ユーザー名
ECSインスタンスでコマンドを実行するために使用するユーザー名を指定します。
セキュリティ上の理由から、最小権限の原則に基づいて、Cloud Assistantコマンドを通常のユーザーとして実行することを推奨します。 詳細については、「Cloud Assistantコマンドを通常ユーザーとして実行する」をご参照ください。
デフォルトでは、Cloud Assistantコマンドは、Linuxインスタンスではrootユーザーによって、Windowsインスタンスではシステムユーザーによって実行されます。
タイムアウト
インスタンスでコマンドを実行するタスクのタイムアウト期間を指定します。 コマンドタスクがタイムアウトすると、Cloud Assistantはタスクプロセスを強制終了します。
単位は秒です。 デフォルトでは、このパラメーターはコマンドに指定したTimeoutの値に設定されます。
説明このタイムアウト期間は、コマンドタスクにのみ適用されます。 コマンドタスクのタイムアウト時間を変更しても, コマンドのタイムアウト時間は影響を受けません。
タグ
コマンドタスクにタグを追加するには、[タグキー] と [タグ値] を指定します。
[インスタンスの選択] および [管理対象インスタンスの選択] セクションで、1つ以上のインスタンスを選択します。
複数のインスタンスがある場合は、インスタンスID、名前、またはタグでコマンドを実行するインスタンスを検索し、Cloud Assistant Agentのステータスで結果をフィルタリングできます。
説明マネージドインスタンスは、Alibaba Cloudによって提供されていないが、Cloud Assistantによって管理されているインスタンスです。 詳細は、「Alibaba Cloudマネージドインスタンス」をご参照ください。
[実行] をクリックします。
Alibaba Cloud CLIを使用したコマンドの実行
Alibaba Cloud CLIを使用してコマンドを実行する場合は、コンピューターにAlibaba Cloud CLIがインストールされていることを確認してください。 Alibaba Cloud CLIのインストール方法は、オペレーティングシステムによって異なります。 さまざまなオペレーティングシステムにAlibaba Cloud CLIをインストールする方法については、以下のトピックを参照してください。
(オプション) インスタンスのステータスを確認します。 インスタンスが実行中 (
実行中
) 状態でない場合は、StartInstance操作を呼び出してインスタンスを開始します。aliyun ecs StartInstance --InstanceId 'i-bp1f4f6o8lv0wqof****'
説明この例では、一重引用符 ('') で囲まれた値がパラメータの値の例である。 実際の条件に基づいて値を変更する必要があります。
パラメーターの詳細については、「StartInstance」をご参照ください。
(オプション) DescribeCloudAssistantStatus操作を呼び出して、Cloud Assistant Agentがインスタンスにインストールされているかどうかを確認します。
aliyun ecs DescribeCloudAssistantStatus --RegionId 'cn-hangzhou' \ --InstanceId.1 'i-bp1f4f6o8lv0wqof****'
Cloud Assistant Agentがインスタンスにインストールされている場合、
CloudAssistantStatus
の値はtrueになります。 それ以外の場合は、InstallCloudAssistant操作を呼び出して、インスタンスにCloud Assistant Agentをインストールします。 詳細については、「DescribeCloudAssistantStatus」および「InstallCloudAssistant」をご参照ください。InvokeCommand操作を呼び出して、作成したCloud Assistantコマンドを1つ以上のインスタンスで実行します。
aliyun ecs InvokeCommand --RegionId 'cn-hangzhou' \ --InstanceId.1 'i-bp1f4f6o8lv0wqof****' \ --InstanceId.2 'i-bp137qu6142s3mhm****' \ --CommandId 'c-hz018qp243j****'
下表にパラメーター示します。 パラメーターの詳細については、「InvokeCommand」をご参照ください。
パラメーター
例
説明
RegionId
cn-hangzhou
リージョン ID です。
InstanceId.1
i-bp1f4f6o8lv0wqof ****
コマンドを実行する最初のインスタンスのID。
InstanceId.2
i-bp137qu6142s3mhm ****
コマンドを実行する2番目のインスタンスのID。
CommandId
c-hz018qp243j ****
コマンドID。