Formato de archivo de metadatos de contenedor de Amazon ECS - Amazon Elastic Container Service

Formato de archivo de metadatos de contenedor de Amazon ECS

La información siguiente se almacena en el archivo JSON de metadatos del contenedor.

Cluster

El nombre del clúster que está ejecutando la tarea del contenedor.

ContainerInstanceARN

Nombre de recurso de Amazon (ARN) de la instancia de contenedor del host.

TaskARN

Nombre de recurso de Amazon (ARN) de la tarea a la que pertenece el contenedor.

TaskDefinitionFamily

Nombre de la familia de definiciones de tareas que se está utilizando en el contenedor.

TaskDefinitionRevision

Revisión de definición de tarea que está utilizando el contenedor.

ContainerID

ID del contenedor de Docker (no el ID del contenedor de Amazon ECS).

ContainerName

Nombre del contenedor obtenido de la definición de tareas de Amazon ECS del contenedor.

DockerContainerName

Nombre de contenedor que el daemon de Docker utiliza para el contenedor (por ejemplo, el nombre que aparece en el salida del comando docker ps).

ImageID

Resumen del volumen de dispositivo raíz (SHA) de la imagen de Docker que se usa para iniciar el contenedor.

ImageName

Nombre y etiqueta de la imagen de Docker que se usa para iniciar el contenedor.

PortMappings

Mapeos de puertos asociadas con el contenedor.

ContainerPort

Puerto del contenedor que se expone.

HostPort

Puerto de la instancia de contenedor del host que se expone.

BindIp

Dirección IP de vinculación que Docker asigna al contenedor. Esta dirección IP solo se aplica con el modo de red bridge y únicamente está accesible desde la instancia de contenedor.

Protocol

Protocolo de red utilizado para el mapeo de puertos.

Networks

Modo de red y dirección IP del contenedor.

NetworkMode

Modo de red de la tarea a la que pertenece el contenedor.

IPv4Addresses

Direcciones IP asociadas con el contenedor.

importante

Si la tarea está utilizando el modo de red awsvpc, no se devolverá la dirección IP del contenedor. En este caso, puede recuperar la dirección IP leyendo el archivo /etc/hosts con el siguiente comando:

tail -1 /etc/hosts | awk '{print $1}'
MetadataFileStatus

Estado del archivo de metadatos. Cuando el estado es READY, el archivo de metadatos está actualizado y completo. Si el archivo todavía no está listo (por ejemplo, en el momento de iniciar la tarea), está disponible una versión truncada del formato de archivo. Para evitar la probable condición de carrera en la cual el contenedor se ha iniciado pero todavía no se han escrito los metadatos, puede analizar el archivo de metadatos y esperar a que este parámetro se establezca en READY antes de comenzar a depender de los metadatos. Esto suele estar disponible en menos de 1 segundo a partir del momento en que se inicia el contenedor.

AvailabilityZone

Zona de disponibilidad en la que reside la instancia de contenedor del host.

HostPrivateIPv4Address

La dirección IP privada de la tarea a la que pertenece el contenedor.

HostPublicIPv4Address

La dirección IP pública de la tarea a la que pertenece el contenedor.

ejemplo Archivo de metadatos de los contenedores de Amazon ECS (READY)

En el ejemplo siguiente se muestra un archivo de metadatos del contenedor con el estado READY.

{ "Cluster":"arn:aws:ecs:us-east-1:123456789012:cluster/MyCluster", "TaskARN":"arn:aws:ecs:us-east-1:123456789012:task/MyCluster/b593651c4d6b44a6b2b583f45c957e15", "Family":"curltest-container", "Revision":"2", "DesiredStatus":"RUNNING", "KnownStatus":"RUNNING", "Limits": { "CPU":0.25, "Memory":512 }, "PullStartedAt":"2025-01-17T20:56:17.394610044Z", "PullStoppedAt":"2025-01-17T20:56:25.282708213Z", "AvailabilityZone":"us-east-1b", "LaunchType":"FARGATE", "Containers":[ { "DockerId":"b593651c4d6b44a6b2b583f45c957e15-3356213583", "Name":"curltest","DockerName":"curltest", "Image":"public.ecr.aws/amazonlinux/amazonlinux:latest", "ImageID":"sha256:7f371357694782356b65c7fd60dd1ca124c47bd5ed1b1ffe7c0e17f562898367", "Labels": { "com.amazonaws.ecs.cluster":"arn:aws:ecs:us-east-1:123456789012:cluster/MyCluster", "com.amazonaws.ecs.container-name":"curltest", "com.amazonaws.ecs.task-arn":"arn:aws:ecs:us-east-1:123456789012:task/MyCluster/b593651c4d6b44a6b2b583f45c957e15", "com.amazonaws.ecs.task-definition-family":"curltest-container","com.amazonaws.ecs.task-definition-version":"2" }, "DesiredStatus":"RUNNING", "KnownStatus":"RUNNING", "Limits": { "CPU":2 }, "CreatedAt":"2025-01-17T20:56:26.180347056Z", "StartedAt":"2025-01-17T20:56:26.180347056Z", "Type":"NORMAL", "LogDriver":"awslogs", "LogOptions": { "awslogs-create-group":"true", "awslogs-group":"/ecs/curltest-container", "awslogs-region":"us-east-1", "awslogs-stream":"ecs/curltest/b593651c4d6b44a6b2b583f45c957e15" }, "ContainerARN":"arn:aws:ecs:us-east-1:123456789012:container/MyCluster/b593651c4d6b44a6b2b583f45c957e15/934575e8-5bdb-478f-b763-2341a85b690e", "Networks":[ { "NetworkMode":"awsvpc", "IPv4Addresses":["10.0.1.58"] } ], "Snapshotter":"overlayfs" } ], "ClockDrift": { "ClockErrorBound":0.487801,"ReferenceTimestamp":"2025-01-17T20:56:02Z", "ClockSynchronizationStatus":"SYNCHRONIZED" }, "FaultInjectionEnabled":false }
ejemplo Archivo de metadatos del contenedor de Amazon ECS incompleto (aún no está en el estado READY)

En el ejemplo siguiente se muestra un archivo de metadatos del contenedor que todavía no ha alcanzado el estado READY. La información del archivo se limita a algunos parámetros que se conocen de la definición de tarea. El archivo de metadatos del contenedor debería estar listo transcurrido un segundo desde que se inicia el contenedor.

{ "Cluster": "default", "ContainerInstanceARN": "arn:aws:ecs:us-west-2:012345678910:container-instance/default/1f73d099-b914-411c-a9ff-81633b7741dd", "TaskARN": "arn:aws:ecs:us-west-2:012345678910:task/default/d90675f8-1a98-444b-805b-3d9cabb6fcd4", "ContainerName": "metadata" }