

# Amazon ECS コンテナインスタンス状態変更イベント
<a name="ecs_container_instance_events"></a>

以下の場合は、コンテナインスタンス状態変更イベントが発生します。

ユーザーが `StartTask`、`RunTask`、`StopTask` API オペレーションを直接または AWS マネジメントコンソール や SDKs 経由で呼び出します。  
コンテナインスタンスでタスクを配置または停止すると、コンテナインスタンスの使用可能なリソース (CPU、メモリ、使用可能なポートなど) が変更されます。

Amazon ECS サービススケジューラがタスクを開始または停止する。  
コンテナインスタンスでタスクを配置または停止すると、コンテナインスタンスの使用可能なリソース (CPU、メモリ、使用可能なポートなど) が変更されます。

`SubmitTaskStateChange`Amazon ECSコンテナエージェントは、目的の`RUNNING`ステータスがタスクの`STOPPED`ステータスでAPIオペレーションを呼び出します。  
Amazon ECS コンテナエージェントは、コンテナインスタンスでタスクの状態をモニタリングし、状態に変更があるとレポートします。`RUNNING` であるべきタスクが `STOPPED` に変わると、エージェントは停止したタスクに割り当てられているリソース (CPU、メモリ、使用可能なポートなど) を解放します。

ユーザーが `DeregisterContainerInstance` API オペレーションを使用してコンテナインスタンスを直接または AWS マネジメントコンソール や SDKs 経由で登録解除します。  
コンテナインスタンスを登録解除すると、コンテナインスタンスのステータスと Amazon ECS コンテナエージェントの接続ステータスが変更されます。

EC2 インスタンスの停止に伴ってタスクが停止されました。  
コンテナインスタンスを停止すると、このコンテナインスタンスで実行されているタスクのステータスは `STOPPED` に変わります。

Amazon ECS コンテナエージェントがコンテナインスタンスを初めて登録します。  
Amazon ECS コンテナエージェントで初めてコンテナインスタンスを (起動時または手動による初回起動時に) 登録するときに、インスタンスの状態変更イベントが作成されます。

Amazon ECS コンテナエージェントが、Amazon ECS と接続または接続解除する。  
Amazon ECS コンテナエージェントが Amazon ECS バックエンドと接続または接続解除すると、コンテナインスタンスの `agentConnected` ステータスが変わります。  
Amazon ECS コンテナエージェントは、通常の操作の一環として、1 時間に数回切断して再接続するため、エージェントの接続イベントが予期されます。これらのイベントは、コンテナエージェントまたはコンテナインスタンスに問題があることを示すものではありません。

インスタンスの Amazon ECS コンテナエージェントをアップグレードします。  
コンテナインスタンスの詳細には、コンテナエージェントバージョンのオブジェクトが含まれています。エージェントをアップグレードすると、このバージョン情報が変わり、イベントが発生します。

**Example コンテナインスタンス状態変更イベント**  
コンテナインスタンスの状態変更イベントは、次の形式で配信されます。以下の `detail` セクションは、「Amazon Elastic Container Service API リファレンス」の [DescribeContainerInstances](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_DescribeContainerInstances.html) API オペレーションから返される [ContainerInstance](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ContainerInstance.html) オブジェクトに似ています。EventBridge パラメータの詳細については、「*Amazon EventBridge ユーザーガイド*」の「[AWS サービスイベントメタデータ](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-events-structure.html)」を参照してください。  

```
{
  "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"
  }
}
```