Amazon ECS コンテナインスタンス状態変更イベント
以下の場合は、コンテナインスタンス状態変更イベントが発生します。
- ユーザーが
StartTask
、RunTask
、StopTask
API オペレーションを直接または AWS Management Console や SDKs 経由で呼び出します。 -
コンテナインスタンスでタスクを配置または停止すると、コンテナインスタンスの使用可能なリソース (CPU、メモリ、使用可能なポートなど) が変更されます。
- Amazon ECS サービススケジューラがタスクを開始または停止する。
-
コンテナインスタンスでタスクを配置または停止すると、コンテナインスタンスの使用可能なリソース (CPU、メモリ、使用可能なポートなど) が変更されます。
SubmitTaskStateChange
Amazon ECSコンテナエージェントは、目的のRUNNING
ステータスがタスクのSTOPPED
ステータスでAPIオペレーションを呼び出します。-
Amazon ECS コンテナエージェントは、コンテナインスタンスでタスクの状態をモニタリングし、状態に変更があるとレポートします。
RUNNING
であるべきタスクがSTOPPED
に変わると、エージェントは停止したタスクに割り当てられているリソース (CPU、メモリ、使用可能なポートなど) を解放します。 - ユーザーが
DeregisterContainerInstance
API オペレーションを使用してコンテナインスタンスを直接または AWS Management Console や SDKs 経由で登録解除します。 -
コンテナインスタンスを登録解除すると、コンテナインスタンスのステータスと Amazon ECS コンテナエージェントの接続ステータスが変更されます。
- EC2 インスタンスの停止に伴ってタスクが停止されました。
-
コンテナインスタンスを停止すると、このコンテナインスタンスで実行されているタスクのステータスは
STOPPED
に変わります。 - Amazon ECS コンテナエージェントがコンテナインスタンスを初めて登録します。
-
Amazon ECS コンテナエージェントで初めてコンテナインスタンスを (起動時または手動による初回起動時に) 登録するときに、インスタンスの状態変更イベントが作成されます。
- Amazon ECS コンテナエージェントが、Amazon ECS と接続または接続解除する。
-
Amazon ECS コンテナエージェントが Amazon ECS バックエンドと接続または接続解除すると、コンテナインスタンスの
agentConnected
ステータスが変わります。注記
Amazon ECS コンテナエージェントは、通常の操作の一環として、1 時間に数回切断して再接続するため、エージェントの接続イベントが予期されます。これらのイベントは、コンテナエージェントまたはコンテナインスタンスに問題があることを示すものではありません。
- インスタンスの Amazon ECS コンテナエージェントをアップグレードします。
-
コンテナインスタンスの詳細には、コンテナエージェントバージョンのオブジェクトが含まれています。エージェントをアップグレードすると、このバージョン情報が変わり、イベントが発生します。
例 コンテナインスタンス状態変更イベント
コンテナインスタンスの状態変更イベントは、次の形式で配信されます。以下の detail
セクションは、「Amazon Elastic Container Service API リファレンス」の DescribeContainerInstances API オペレーションから返される ContainerInstance オブジェクトに似ています。EventBridge パラメータの詳細については、「Amazon EventBridge ユーザーガイド」の「イベントとイベントパターン」を参照してください。
{
"version": "0",
"id": "8952ba83-7be2-4ab5-9c32-6687532d15a2",
"detail-type": "ECS Container Instance State Change",
"source": "aws.ecs",
"account": "111122223333",
"time": "2016-12-06T16:41:06Z",
"region": "us-east-1",
"resources": [
"arn:aws:ecs:us-east-1:111122223333:container-instance/b54a2a04-046f-4331-9d74-3f6d7f6ca315"
],
"detail": {
"agentConnected": true,
"attributes": [
{
"name": "com.amazonaws.ecs.capability.logging-driver.syslog"
},
{
"name": "com.amazonaws.ecs.capability.task-iam-role-network-host"
},
{
"name": "com.amazonaws.ecs.capability.logging-driver.awslogs"
},
{
"name": "com.amazonaws.ecs.capability.logging-driver.json-file"
},
{
"name": "com.amazonaws.ecs.capability.docker-remote-api.1.17"
},
{
"name": "com.amazonaws.ecs.capability.privileged-container"
},
{
"name": "com.amazonaws.ecs.capability.docker-remote-api.1.18"
},
{
"name": "com.amazonaws.ecs.capability.docker-remote-api.1.19"
},
{
"name": "com.amazonaws.ecs.capability.ecr-auth"
},
{
"name": "com.amazonaws.ecs.capability.docker-remote-api.1.20"
},
{
"name": "com.amazonaws.ecs.capability.docker-remote-api.1.21"
},
{
"name": "com.amazonaws.ecs.capability.docker-remote-api.1.22"
},
{
"name": "com.amazonaws.ecs.capability.docker-remote-api.1.23"
},
{
"name": "com.amazonaws.ecs.capability.task-iam-role"
}
],
"clusterArn": "arn:aws:ecs:us-east-1:111122223333:cluster/default",
"containerInstanceArn": "arn:aws:ecs:us-east-1:111122223333:container-instance/b54a2a04-046f-4331-9d74-3f6d7f6ca315",
"ec2InstanceId": "i-f3a8506b",
"registeredResources": [
{
"name": "CPU",
"type": "INTEGER",
"integerValue": 2048
},
{
"name": "MEMORY",
"type": "INTEGER",
"integerValue": 3767
},
{
"name": "PORTS",
"type": "STRINGSET",
"stringSetValue": [
"22",
"2376",
"2375",
"51678",
"51679"
]
},
{
"name": "PORTS_UDP",
"type": "STRINGSET",
"stringSetValue": []
}
],
"remainingResources": [
{
"name": "CPU",
"type": "INTEGER",
"integerValue": 1988
},
{
"name": "MEMORY",
"type": "INTEGER",
"integerValue": 767
},
{
"name": "PORTS",
"type": "STRINGSET",
"stringSetValue": [
"22",
"2376",
"2375",
"51678",
"51679"
]
},
{
"name": "PORTS_UDP",
"type": "STRINGSET",
"stringSetValue": []
}
],
"status": "ACTIVE",
"version": 14801,
"versionInfo": {
"agentHash": "aebcbca",
"agentVersion": "1.13.0",
"dockerVersion": "DockerVersion: 1.11.2"
},
"updatedAt": "2016-12-06T16:41:06.991Z"
}
}