假设某些docker映像将部署在集群中的其他服务名称上。我认为,如果您希望进行复杂的部署,而导致该映像不仅只有一个统一的工作人员,就会发生这种情况。
在这种情况下,我希望任务本身能够识别正在执行该任务的服务名称。
据我了解,在EC2中,可以通过访问169.254.169.254
获得有关该实例的一些元数据,如其文档中所述。 (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html)
答案 0 :(得分:0)
您可以使用task-metadata-endpoint-v3版
curl ${ECS_CONTAINER_METADATA_URI}/task
此路径返回任务的元数据JSON,包括与任务关联的所有容器的容器ID和名称的列表。有关此端点的响应的更多信息,请参见Task Metadata JSON Response。
Amazon ECS任务元数据端点
Amazon ECS容器代理提供了一种检索各种任务元数据和Docker统计信息的方法。这称为任务元数据端点。提供以下版本:
任务元数据终端节点版本3 –适用于在平台版本v1.3.0或更高版本上使用Fargate启动类型的任务以及在至少运行1.21.0版本的Amazon EC2基础设施上启动的使用EC2启动类型的任务。 Amazon ECS容器代理。有关更多信息,请参见任务元数据端点版本3。