检索经 Amazon ECS 优化的 AMI 元数据 - Amazon Elastic Container Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

检索经 Amazon ECS 优化的 AMI 元数据

经 Amazon ECS 优化的 AMI 的 AMI ID、映像名称、操作系统、容器代理版本和运行时版本可通过查询 Systems Manager Parameter Store API 以编程方式检索。有关 Systems Manager 参数存储 API 的更多信息,请参阅GetParametersGetParametersByPath

注意

您的管理用户必须具有以下 IAM 权限才能检索经 Amazon ECS 优化的 AMI 元数据。这些权限已添加到 AmazonECS_FullAccess IAM policy。

  • ssm:GetParameters

  • ssm:GetParameter

  • ssm:GetParametersByPath

Systems Manager Parameter Store 参数格式

注意

以下 Systems Manager Parameter Store API 参数已被弃用,不应使用这些参数来检索最新的 Windows AMI:

  • /aws/service/ecs/optimized-ami/windows_server/2016/english/full/recommended/image_id

  • /aws/service/ecs/optimized-ami/windows_server/2019/english/full/recommended/image_id

以下是经 Amazon ECS 优化的 AMI 变体参数名称的格式。

  • Windows Server 2022 Full AMI 元数据:

    /aws/service/ami-windows-latest/Windows_Server-2022-English-Full-ECS_Optimized
  • Windows Server 2022 Core AMI 元数据:

    /aws/service/ami-windows-latest/Windows_Server-2022-English-Core-ECS_Optimized
  • Windows Server 2019 Full AMI 元数据:

    /aws/service/ami-windows-latest/Windows_Server-2019-English-Full-ECS_Optimized
  • Windows Server 2019 Core AMI 元数据:

    /aws/service/ami-windows-latest/Windows_Server-2019-English-Core-ECS_Optimized
  • Windows Server 2016 Full AMI 元数据:

    /aws/service/ami-windows-latest/Windows_Server-2016-English-Full-ECS_Optimized

以下参数名称格式检索最新稳定的 Windows Server 2019 Full AMI 都元数据

aws ssm get-parameters --names /aws/service/ami-windows-latest/Windows_Server-2019-English-Full-ECS_Optimized

以下是针对参数值返回的 JSON 对象的示例。

{
    "Parameters": [
        {
            "Name": "/aws/service/ami-windows-latest/Windows_Server-2019-English-Full-ECS_Optimized",
            "Type": "String",
            "Value": "{\"image_name\":\"Windows_Server-2019-English-Full-ECS_Optimized-2023.06.13\",\"image_id\":\"ami-0debc1fb48e4aee16\",\"ecs_runtime_version\":\"Docker (CE) version 20.10.21\",\"ecs_agent_version\":\"1.72.0\"}",
            "Version": 58,
            "LastModifiedDate": "2023-06-22T19:37:37.841000-04:00",
            "ARN": "arn:aws:ssm:us-east-1::parameter/aws/service/ami-windows-latest/Windows_Server-2019-English-Full-ECS_Optimized",
            "DataType": "text"
        }
    ],
    "InvalidParameters": []
}

上述输出中的每个字段都可作为子参数查询。通过将子参数名称追加到所选 AMI 的路径来构造子参数的参数路径。可用子参数如下:

  • schema_version

  • image_id

  • image_name

  • os

  • ecs_agent_version

  • ecs_runtime_version

示例

以下示例说明了可用于检索经 Amazon ECS 优化的 AMI 变体的元数据的方法。

检索最新稳定的经 Amazon ECS 优化的 AMI 的元数据

您可以使用以下 Amazon CLI 命令检索经过优化 Amazon ECS 的最新稳定 Amazon CLI 版 AMI。

  • 对于经 Amazon ECS 优化的 Windows Server 2022 Full AMI:

    aws ssm get-parameters --names /aws/service/ami-windows-latest/Windows_Server-2022-English-Full-ECS_Optimized --region us-east-1
  • 对于经 Amazon ECS 优化的 Windows Server 2022 Core AMI:

    aws ssm get-parameters --names /aws/service/ami-windows-latest/Windows_Server-2022-English-Core-ECS_Optimized --region us-east-1
  • 对于经 Amazon ECS 优化的 Windows Server 2019 Full AMI:

    aws ssm get-parameters --names /aws/service/ami-windows-latest/Windows_Server-2019-English-Full-ECS_Optimized --region us-east-1
  • 对于经 Amazon ECS 优化的 Windows Server 2019 Core AMI:

    aws ssm get-parameters --names /aws/service/ami-windows-latest/Windows_Server-2019-English-Core-ECS_Optimized --region us-east-1
  • 对于经 Amazon ECS 优化的 Windows Server 2016 Full AMI:

    aws ssm get-parameters --names /aws/service/ami-windows-latest/Windows_Server-2016-English-Full-ECS_Optimized --region us-east-1

在模板中使用最新推荐的 Amazon ECS 优化版 AMI Amazon CloudFormation

您可以参考 Amazon CloudFormation 模板中的最新推荐的经 Amazon ECS 优化的 AMI ,方法是引用 Systems Manager 参数存储名称。

Parameters: LatestECSOptimizedAMI: Description: AMI ID Type: AWS::SSM::Parameter::Value<AWS::EC2::Image::Id> Default: /aws/service/ami-windows-latest/Windows_Server-2019-English-Full-ECS_Optimized/image_id