Eventos de cambio de estado de instancia de contenedor de Amazon ECS - Amazon Elastic Container Service

Eventos de cambio de estado de instancia de contenedor de Amazon ECS

Los siguientes escenarios provocan eventos de cambio de estado de la instancia de contenedor:

Puede llamar a las operaciones StartTask, RunTask o StopTask de la API, bien directamente o bien con la AWS Management Console o los SDK.

Colocar o parar tareas en una instancia de contenedor modifica los recursos disponibles en ella (tales como CPU, memoria y puertos disponibles).

El programador de servicio de Amazon ECS comienza o detiene una tarea.

Colocar o parar tareas en una instancia de contenedor modifica los recursos disponibles en ella (tales como CPU, memoria y puertos disponibles).

El agente de contenedor de Amazon ECS llama a la operación del API SubmitTaskStateChange con un estado STOPPED para una tarea con un estado deseado RUNNING.

El agente de contenedor de Amazon ECS monitorea el estado de las tareas de las instancias de contenedor y notifica los cambios de estado. Si una tarea que se supone en estado RUNNING pasa a STOPPED, el agente libera los recursos que se asignaron a la tarea parada (tales como CPU, memoria y puertos disponibles).

El registro de la instancia de contenedor se cancela con la operación DeregisterContainerInstance de la API, ya sea directamente o con la AWS Management Console o los SDK.

La anulación del registro de una instancia de contenedor cambia el estado de la instancia de contenedor y el estado de conexión del agente de contenedor de Amazon ECS.

Una tarea se paró al parar la instancia EC2.

Cuando se para una instancia de contenedor, las tareas que se estaban ejecutando en la misma pasan al estado STOPPED.

El agente de contenedor de Amazon ECS registra una instancia de contenedor por primera vez.

La primera vez que el agente de contenedor de Amazon ECS registra una instancia de contenedor (durante el lanzamiento o cuando se ejecuta manualmente por primera vez), se crea un evento de cambio de estado para la instancia.

El agente de contenedor de Amazon ECS se conecta o desconecta de Amazon ECS.

Cuando el agente de contenedor de Amazon ECS se conecta o desconecta del backend de , cambia el estado agentConnected de la instancia de contenedor.

nota

El agente de contenedor de Amazon ECS se desconecta y se vuelve a conectar varias veces por hora como parte de su operación normal, por lo que cabe esperar que se produzcan eventos de conexión del agente. Estos eventos no indican que haya un problema con el agente de contenedores ni con o su instancia de contenedor.

El agente de contenedor de Amazon ECS se actualiza en una instancia.

El detalle de instancia de contenedor contiene un objeto para la versión del agente de contenedor. Si actualiza el agente, esta información de la versión cambia y genera un evento.

ejemplo Evento de cambio de estado de instancia de contenedor

Los eventos de cambio de estado de instancia de contenedor se entregan en el siguiente formato. La sección detail siguiente se asemeja al objeto ContainerInstance que se devuelve de una operación de la API DescribeContainerInstances en la Referencia de la API de Amazon Elastic Container Service. Para obtener más información acerca de los parámetros de EventBridge, consulte Metadatos de eventos de servicio deAWS en la Guía del usuario de 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" } }