Amazon ECS 任务元数据端点版本 4
Amazon ECS 容器代理会向每个容器注入一个环境变量,称为任务元数据端点,它提供了各种任务元数据和 Docker 统计信息
任务元数据和联网速率统计数据将发送到 CloudWatch 容器洞察,并可在 AWS Management Console 中查看。有关更多信息,请参阅 使用具有增强型可观测性的 Container Insights 监控 Amazon ECS 容器。
注意
Amazon ECS 提供较早版本的任务元数据端点。为避免将来需要创建新的任务元数据终端节点版本,可能会将其他元数据添加到版本 4 输出中。我们不会删除任何现有元数据或更改元数据字段名称。
原定设置情况下,环境变量会注入到运行至少版本的 Amazon EC2 Linux 实例上启动的 Amazon ECS 任务的容器中 1.39.0
的 Amazon ECS 容器代理。对于使用 awsvpc
网络模式的 Amazon EC2 Windows 实例,Amazon ECS 容器代理的版本必须至少为 1.54.0
。有关更多信息,请参阅 Amazon ECS Linux 容器实例管理。
注意
通过将代理更新为最新版本,您可以使用较旧版本的 Amazon ECS 容器代理在 Amazon EC2 实例上添加对此功能的支持。有关更多信息,请参阅 更新 Amazon ECS 容器代理。
有关任务元数据示例输出,请参阅 Amazon ECS 任务元数据 v4 示例。
任务元数据端点版本 4 路径
以下任务元数据端点路径可用于容器:
${ECS_CONTAINER_METADATA_URI_V4}
-
此路径返回容器的元数据。
${ECS_CONTAINER_METADATA_URI_V4}/task
-
此路径返回任务的元数据,包括与任务相关的所有容器的 ID 和名称列表。有关此终端节点响应的更多信息,请参阅Amazon ECS 任务元数据 V4 JSON 响应。
${ECS_CONTAINER_METADATA_URI_V4}/taskWithTags
-
除了可以使用
ListTagsForResource
API 检索的任务和容器实例标记外,此路径还返回/task
端点中包含的任务的元数据。检索标记元数据时收到的任何错误都将包含在Errors
字段中的值。注意
Errors
字段仅位于运行至少一个版本1.50.0
的容器代理的 Amazon EC2 Linux 实例上托管的任务的响应中。对于使用awsvpc
网络模式的 Amazon EC2 Windows 实例,Amazon ECS 容器代理必须至少为版本1.54.0
这端点需要
ecs.ListTagsForResource
权限。重要
使用
${ECS_CONTAINER_METADATA_URI_V4}/taskWithTags
端点时,请注意,每次调用最多向ecs:ListTagsForResource
发出两个 API 请求(一个用于容器实例标签,一个用于任务标签),并且任务中的 Sidecar 容器可以代表您进行这些调用。频繁的端点调用可能会导致 API 节流。考虑实施缓存或批处理策略来降低调用频率,尤其是在高流量应用程序中,并使用 AWS CloudTrail 调试 API 节流问题。有关
ListTagsForResource
API 节流限制的信息,请参阅《Amazon Elastic Container Service API Reference》中的 Request throttling for the Amazon ECS API。有关使用 AWS CloudTrail 调试 Amazon ECS API 调用的更多信息,请参阅使用 AWS CloudTrail 记录 Amazon ECS API 调用。 ${ECS_CONTAINER_METADATA_URI_V4}/stats
-
此路径返回特定容器的 Docker 统计信息。有关每个返回的统计信息的更多信息,请参阅 Docker API 文档中的 ContainerStats
。 对于使用
awsvpc
或bridge
版本托管在运行至少版本1.43.0
的容器代理的Amazon EC2 Linux 实例上的或网络模式的Amazon ECS任务,响应中将包含其他网络速率统计信息。对于所有其他任务,响应将仅包含累积网络统计信息。 ${ECS_CONTAINER_METADATA_URI_V4}/task/stats
-
此路径返回与任务相关的所有容器的 Docker 统计数据 。附加容器可以使用此路径提取网络指标。有关每个返回的统计信息的更多信息,请参阅 Docker API 文档中的 ContainerStats
。 对于使用
awsvpc
或bridge
版本托管在运行至少版本1.43.0
的容器代理的Amazon EC2 Linux 实例上的或网络模式的Amazon ECS任务,响应中将包含其他网络速率统计信息。对于所有其他任务,响应将仅包含累积网络统计信息。