Elastic Compute Service (ECS) は、O&M イベント、ライフサイクルステータスの変更イベント、プリエンプティブルインスタンスのリリースイベントなど、インスタンスイベントの通知を送信できます。
イベント
ECS は、以下のインスタンスイベントの通知を送信できます。
O&M イベント
インスタンスで O&M イベントが発生すると、ECS はそのイベントの最初の通知を送信し、その後、イベントのステータスが変更されるたびに通知を送信します。 O&M イベントの通知名については、このトピックの付録:インスタンス関連の O&M イベントの通知セクションを参照してください。
以下のサンプルコードスニペットは、[システムメンテナンスによるインスタンスの再起動] (SystemMaintenance.Reboot) イベントの JSON 形式の通知の例を示しています。
O&M イベントが [スケジュール済み] (Scheduled) 状態であることを示す最初の通知のサンプル:
{ "id": "2256A988-0B26-4E2B-820A-8A********E5", "product": "ECS", "resourceId": "acs:ecs:cn-hangzhou:169070********30:instance/i-bp1ecr********5go2go", "level": "CRITICAL", "name": "Instance:SystemMaintenance.Reboot:Scheduled", "userId": "169070********30", "eventTime": "20190409T121826.922+0800", "regionId": "cn-hangzhou", "content": { "eventId": "e-bp11trd********pqum2", "publishTime": "2019-04-09T04:18:26Z", "notBefore": "2019-04-12T01:01:01Z", // 予定開始時刻 "instanceId": "i-bp1ecr********5go2go", // インスタンスID "eventType": "SystemMaintenance.Reboot", // イベントタイプ "eventStatus": "Scheduled" // イベントステータス } }notBefore フィールドで指定された時刻の前にインスタンスを再起動すると、O&M イベントは回避され、ECS は O&M イベントのステータスが [回避済み] (Avoided) に変更されたことを示す通知を送信します。通知のサンプル:
{ "id": "2256A988-0B26-4E2B-820A-8A********E5", "product": "ECS", "resourceId": "acs:ecs:cn-hangzhou:169070********30:instance/i-bp1ecr********5go2go", "level": "CRITICAL", "name": "Instance:SystemMaintenance.Reboot:Scheduled", "userId": "169070********30", "eventTime": "20190410T160101.922+0800", "regionId": "cn-hangzhou", "content": { "eventId": "e-bp11trdr********qum2", "publishTime": "2019-04-09T04:18:26Z", "notBefore": "2019-04-12T01:01:01Z", "instanceId": "i-bp1ecr********5go2go", "eventType": "SystemMaintenance.Reboot", "eventStatus": "Avoided", "executeStartTime": "2019-04-10T08:01:01Z", // 実行開始時刻 "executeFinishTime": "2019-04-10T08:01:01Z" // 実行終了時刻 } }
次の表は、content パラメーターに含まれるフィールドについて説明しています。
フィールド | 説明 | 例 |
eventId | O&M イベントの ID。 | e-t4navn7********6x5no |
publishTime | O&M イベントが公開された時刻。 | 2019-04-09T04:18:26Z |
notBefore | O&M イベントのスケジュールされた開始時刻。notBefore フィールドは、メンテナンスイベントでのみ使用できます。 | 2019-04-12T01:01:01Z |
instanceId | 影響を受けるインスタンスの ID。 | i-bp1ecr********5go2go |
eventType | O&M イベントのタイプ。詳細については、概要をご参照ください。 | SystemMaintenance.Reboot |
eventStatus | O&M イベントのステータス。詳細については、概要をご参照ください。 | Avoided |
executeStartTime | イベントに関連する O&M タスクの開始時刻。時刻は UTC です。 | 2019-04-10T08:01:01Z |
executeFinishTime | イベントに関連する O&M タスクの終了時刻。時刻は UTC です。 説明 executeStartTime フィールドと executeFinishTime フィールドは、[実行中] (Executing)、[実行済み] (Executed)、[キャンセル済み] (Canceled)、または [回避済み] (Avoided) 状態の O&M イベントでのみ使用できます。 | 2019-04-10T08:01:01Z |
ライフサイクルステータスの変更イベント
インスタンスのステータスが変更されると、ECS はイベント通知を送信します。インスタンスのステータスの変更については、インスタンスのライフサイクルをご参照ください。
以下のサンプルコードは、インスタンスのステータスが [実行中] (Running) に変更されたときに送信されるイベント通知の例を示しています。
{
"id": "2256A988-0B26-4E2B-820A-8A********E5",
"product": "ECS",
"resourceId": "acs:ecs:cn-hangzhou:169070********30:instance/i-bp1ecr********5go2go",
"level": "INFO",
"name": "Instance:StateChange",
"userId": "169070********30",
"eventTime": "20190409T121826.922+0800",
"regionId": "cn-hangzhou",
"content": {
"resourceId": "i-bp1ecr********5go2go", // インスタンスID
"resourceType": "ALIYUN::ECS::Instance", // リソースタイプ
"state": "Running" // ステータス
}
}次の表は、content パラメーターに含まれるフィールドについて説明しています。
フィールド | 説明 | 例 |
resourceId | インスタンスの ID。 | i-bp1ecr********5go2go |
resourceType | リソースのタイプ。有効な値:ALIYUN::ECS::Instance。 | ALIYUN::ECS::Instance |
state | インスタンスのステータス。有効な値:
| Running |
プリエンプティブルインスタンスのリリースイベント
プリエンプティブルインスタンスは、市場価格の変動またはリソース不足のためにリリースされる場合があります。 ECS は、プリエンプティブルインスタンスがリリースされる 5 分前にイベント通知を送信して、インスタンスの中断を通知します。詳細については、プリエンプティブルインスタンスの概要をご参照ください。
以下のサンプルコードは、JSON 形式のイベント通知の例を示しています。
{
"id": "2256A988-0B26-4E2B-820A-8A********E5",
"product": "ECS",
"resourceId": "acs:ecs:cn-hangzhou:169070********30:instance/i-bp1ecr********5go2go",
"level": "INFO",
"name": "Instance:PreemptibleInstanceInterruption",
"userId": "169070********30",
"eventTime": "20190409T121826.922+0800",
"regionId": "cn-hangzhou",
"content": {
"instanceId": "i-bp1ecr********5go2go", // インスタンスID
"action": "delete" // アクション
}
}次の表は、content パラメーターに含まれるフィールドについて説明しています。
フィールド | 説明 | 例 |
instanceId | プリエンプティブルインスタンスの ID。 | i-bp1ecr********5go2go |
action | プリエンプティブルインスタンスに対して実行されるアクション。有効な値:delete。 | delete |
専用ホスト上のインスタンスのホットマイグレーションイベント
ModifyInstanceDeployment 操作を呼び出して、専用ホスト間でインスタンスを移行するホットマイグレーションを実行できます。ホットマイグレーションは非同期操作であり、移行プロセス中にインスタンスのステータスは変更されません。Instance:LiveMigrationAcrossDDH イベントの通知を設定して、移行タスクの進捗状況に関する更新を受信できます。
以下のサンプルコードスニペットは、JSON 形式のイベント通知の例を示しています。
ホットマイグレーションタスクが開始されたイベントのサンプル通知:
{ "id": "2256A988-0B26-4E2B-820A-8A0580D0B8E5", "product": "ECS", "resourceId": "acs:ecs:cn-hangzhou:169070********30:instance/i-bp1ecr********5go2go", "level": "INFO", "instanceName": "instance-event-subscription", "name": "Instance:LiveMigrationAcrossDDH", "userId": "169070********30", "eventTime": "20180608T092537.922+0800", "regionId": "cn-hangzhou", "content": { "instanceId" : "i-bp1ecr********5go2go", // インスタンスID "sourceDedicatedHostId" : "dh-2ze3lm********t8nr82", // 移行元専用ホストID "destinationDedicatedHostId" : "dh-2ze3lm********t8nr83", // 移行先専用ホストID "startTime" : "2018-06-08T01:25:37Z", // 開始時刻 "status" : "started" // ステータス } }ホットマイグレーションタスクが完了したイベントのサンプル通知:
{ "id": "2256A988-0B26-4E2B-820A-8A0580D0B8E5", "product": "ECS", "resourceId": "acs:ecs:cn-hangzhou:169070********30:instance/i-bp1ecr********5go2go", "level": "INFO", "instanceName": "instance-event-subscription", "name": "Instance:LiveMigrationAcrossDDH", "userId": "169070********30", "eventTime": "20180608T092545.922+0800", "regionId": "cn-hangzhou", "content": { "instanceId" : "i-bp1ecr********5go2go", "sourceDedicatedHostId" : "dh-2ze3lm********t8nr82", "destinationDedicatedHostId" : "dh-2ze3lm********t8nr83", "startTime" : "2018-06-08T01:25:37Z", "endTime" : "2018-06-08T01:25:45Z", // 終了時刻 "status" : "accomplished" // ステータス } }ホットマイグレーションタスクが失敗したイベントのサンプル通知:
{ "id": "2256A988-0B26-4E2B-820A-8A0580D0B8E5", "product": "ECS", "resourceId": "acs:ecs:cn-hangzhou:169070********30:instance/i-bp1ecr********5go2go", "level": "INFO", "instanceName": "instance-event-subscription", "name": "Instance:LiveMigrationAcrossDDH", "userId": "169070********30", "eventTime": "20180608T092545.922+0800", "regionId": "cn-hangzhou", "content": { "instanceId" : "i-bp1ecr********5go2go", "sourceDedicatedHostId" : "dh-2ze3lm********t8nr82", "destinationDedicatedHostId" : "dh-2ze3lm********t8nr83", "startTime" : "2018-06-08T01:25:37Z", "endTime" : "2018-06-08T01:25:45Z", "status" : "failed" // ステータス } }
次の表は、content パラメーターに含まれるフィールドについて説明しています。
フィールド | 説明 | 例 |
instanceId | インスタンスの ID。 | i-bp1ecr********5go2go |
sourceDedicatedHostId | 移行元専用ホストの ID。 | dh-2ze3lm********t8nr82 |
destinationDedicatedHostId | 移行先専用ホストの ID。 | dh-2ze3lm********t8nr83 |
startTime | ホットマイグレーションタスクの開始時刻。時刻は UTC です。 | 2018-06-08T01:25:37Z |
endTime | ホットマイグレーションタスクの終了時刻。時刻は UTC です。 | 2018-06-08T01:25:45Z |
status | ホットマイグレーションタスクのステータス。有効な値:
| accomplished |
バースト可能インスタンスのパフォーマンスモード変更イベント
バースト可能インスタンスのパフォーマンスモードが変更されると、ECS は Instance:PerformanceModeChange イベントの通知を送信します。
以下のサンプルコードは、JSON 形式のイベント通知の例を示しています。
{
"id": "2256A988-0B26-4E2B-820A-8A0580D0B8E5",
"product": "ECS",
"resourceId": "acs:ecs:cn-hangzhou:169070********30:instance/i-bp1ecr********5go2go",
"level": "INFO",
"name": "Instance:PerformanceModeChange",
"userId": "169070********30",
"eventTime": "20190409T121826.922+0800",
"regionId": "cn-hangzhou",
"content": {
"instanceId" : "i-bp1ecr********5go2go", // インスタンスID
"creditSpecification" : "Unlimited", // クレジット仕様
"operator" : "System" // オペレーター
}
}次の表は、content パラメーターに含まれるフィールドについて説明しています。
フィールド | 説明 | 例 |
instanceId | バースト可能インスタンスの ID。 | i-bp1ecr********5go2go |
creditSpecification | バースト可能インスタンスの新しいパフォーマンスモード。有効な値:
| Standard |
operator | イベントをトリガーしたオペレーター。有効な値:
| User |
バースト可能インスタンスの制限付きパフォーマンスイベント
バースト可能インスタンスの CPU クレジットが使い果たされると、インスタンスはベースラインパフォーマンスに制限され、標準モードで実行されます。前述のシナリオが発生した場合、Instance:BurstablePerformanceRestricted という名前のイベントが生成されます。
各 Instance:BurstablePerformanceRestricted イベントは 1 時間続きます。イベントの開始時刻と終了時刻は 1 時間離れています。このイベントは、インスタンスがイベントウィンドウの一部でベースラインパフォーマンスに制限されていることを示しますが、イベントウィンドウ全体を通してベースラインパフォーマンスに制限されていることを必ずしも示すわけではありません。インスタンスが長時間ベースラインパフォーマンスに制限されたままの場合、Instance:BurstablePerformanceRestricted イベントは 1 時間ごとに生成されます。
以下のサンプルコードは、JSON 形式のイベント通知の例を示しています。
{
"id": "2256A988-0B26-4E2B-820A-8A0580D0B8E5",
"product": "ECS",
"resourceId": "acs:ecs:cn-hangzhou:169070********30:instance/i-bp1ecr********5go2go",
"level": "INFO",
"name": "Instance:BurstablePerformanceRestricted",
"userId": "169070********30",
"eventTime": "20190409T121826.922+0800",
"regionId": "cn-hangzhou",
"content": {
"instanceId" : "i-bp1ecr********5go2go", // インスタンスID
"intervalStart" : "2019-11-11T11:00Z", // 間隔の開始
"intervalEnd" : "2019-11-11T12:00Z" // 間隔の終了
}
}次の表は、content パラメーターに含まれるフィールドについて説明しています。
フィールド | 説明 | 例 |
instanceId | インスタンスの ID。 | i-bp1ecr********5go2go |
intervalStart | イベントウィンドウの開始時刻。時刻は UTC です。 | 2019-11-11T11:00Z |
intervalEnd | イベントウィンドウの終了時刻。時刻は UTC です。 | 2019-11-11T12:00Z |
付録:インスタンス関連の O&M イベントの通知
影響 | イベントタイプとコード | イベント通知名とコード |
インスタンスが再起動されます。 | システムメンテナンスによるインスタンスの再起動 (SystemMaintenance.Reboot) |
|
インスタンスが予期せず再起動されます。 | システムエラーによるインスタンスの再起動 (SystemFailure.Reboot) |
|
インスタンスが予期せず再起動されます。 | インスタンスエラーによるインスタンスの再起動: InstanceFailure.Reboot |
|
インスタンスが再デプロイされます。 | システムメンテナンスによるインスタンスの再デプロイ (SystemMaintenance.Redeploy) |
|
インスタンスが再デプロイされます。 | システムエラーによるインスタンスの再デプロイ (SystemFailure.Redeploy) |
|
インスタンスが再起動され、破損したローカルディスクが隔離されます。 | システムメンテナンスによるインスタンスの再起動とローカルディスクの交換 (SystemMaintenance.RebootAndIsolateErrorDisk) |
|
インスタンスが再起動され、破損したローカルディスクが復元されます。 | システムメンテナンスによるインスタンスの再起動とローカルディスクの再初期化 (SystemMaintenance.RebootAndReInitErrorDisk) |
|
インスタンスがリリースされます。 | インスタンスの作成エラーによるインスタンスの自動リリース (SystemFailure.Delete) |
|