Amazon ECS-Optimized AMI メタデータの取得
Amazon ECS-optimized AMI の各バリアントの AMI ID、イメージ名、オペレーティングシステム、コンテナエージェントバージョン、ランタイムバージョンは、Systems Manager パラメータストア API のクエリを実行してプログラムで取得できます。Systems Manager パラメータストア API の詳細については、「GetParameters」および「GetParametersByPath」を参照してください。
Amazon ECS-optimized AMI メタデータを取得するには、ご使用のユーザーアカウントに次の IAM アクセス許可が必要です。IAM の AmazonECS_FullAccess
ポリシーには、次のアクセス権限が追加されています。
-
ssm:GetParameters
-
ssm:GetParameter
-
ssm:GetParametersByPath
Systems Manager パラメータストアパラメータ形式
以下は、各 Amazon ECS-optimized AMI バリアントのパラメータ名の形式です。
Linux Amazon ECS 最適化 AMI
-
Amazon Linux 2 AMI メタデータ:
/aws/service/ecs/optimized-ami/amazon-linux-2/
<version>
-
Amazon Linux 2 (arm64) AMI メタデータ:
/aws/service/ecs/optimized-ami/amazon-linux-2/arm64/
<version>
-
Amazon Linux 2 (GPU) AMI メタデータ:
/aws/service/ecs/optimized-ami/amazon-linux-2/gpu/
<version>
-
Amazon Linux 2 (推定) AMI メタデータ:
/aws/service/ecs/optimized-ami/amazon-linux-2/inf/
<version>
-
Amazon Linux AMI メタデータ:
/aws/service/ecs/optimized-ami/amazon-linux/
<version>
Windows Amazon ECS 最適化 AMI
-
Windows Server 2019 フル AMI メタデータ:
/aws/service/ami-windows-latest/Windows_Server-2019-English-Full-ECS_Optimized
-
Windows Server 2019 コア AMI メタデータ:
/aws/service/ami-windows-latest/Windows_Server-2019-English-Core-ECS_Optimized
-
Windows Server 2004 コア AMI メタデータ:
/aws/service/ami-windows-latest/Windows_Server-2004-English-Core-ECS_Optimized
-
Windows Server 1909 コア AMI メタデータ:
/aws/service/ami-windows-latest/Windows_Server-1909-English-Core-ECS_Optimized
重要 Amazon ECS 用に最適化された Windows Server 1909 Core AMI は非推奨です。この AMI の新しいバージョンはリリースされません。
-
Windows Server 2016 フル AMI メタデータ:
/aws/service/ami-windows-latest/Windows_Server-2016-English-Full-ECS_Optimized
以下のパラメータ名の形式は、recommended
を使用して、安定している最新の Amazon ECS-optimized Amazon Linux 2 AMI のメタデータを取得します。
/aws/service/ecs/optimized-ami/amazon-linux-2/
recommended
以下は、パラメータ値で返る JSON オブジェクトの例です。
{
"schema_version": 1,
"image_name": "amzn2-ami-ecs-hvm-2.0.20181017-x86_64-ebs",
"image_id": "ami-04a4fb062c609f55b",
"os": "Amazon Linux 2",
"ecs_runtime_version": "Docker version 18.06.1-ce",
"ecs_agent_version": "1.21.0"
}
上記の出力の各フィールドは、サブパラメータとしてクエリに利用できます。サブパラメータのパラメータパスを構築するには、選択した AMI のパスにサブパラメータ名を追加します。以下のサブパラメータが利用可能です。
-
schema_version
-
image_id
-
image_name
-
os
-
ecs_agent_version
-
ecs_runtime_version
以下のパラメータ名の形式は、サブパラメータ image_id
を使用して、安定している最新の Amazon ECS-optimized Amazon Linux 2 AMI のイメージ ID を取得します。
/aws/service/ecs/optimized-ami/amazon-linux-2/
recommended/image_id
以下のパラメータ名の形式は、AMI 名を指定して特定の Amazon ECS-optimized AMI バージョンのメタデータを取得します。
-
Amazon ECS-optimized Amazon Linux 2 AMI メタデータ:
/aws/service/ecs/optimized-ami/amazon-linux-2/
amzn2-ami-ecs-hvm-2.0.20181112-x86_64-ebs
すべてのバージョンの Amazon ECS-optimized Amazon Linux 2 AMI を取得できます。Amazon ECS 最適化 AMI バージョン
amzn-ami-2017.09.l-amazon-ecs-optimized
(Linux) 以降のみ取得できます。詳細については、「Amazon ECS 最適化 AMI バージョン」を参照してください。
例
以下の例は、それぞれの Amazon ECS 最適化 AMI バリアントのメタデータを取得する方法を示しています。
安定している最新の Amazon ECS-optimized AMI メタデータを取得する
AWS CLI で以下の AWS CLI コマンドを使用して、安定している最新の Amazon ECS-optimized AMI メタデータを取得できます。
Linux Amazon ECS 最適化 AMI
-
Amazon ECS-optimized Amazon Linux 2 AMI の場合:
aws ssm get-parameters --names /aws/service/ecs/optimized-ami/amazon-linux-2/recommended --region
us-east-1
-
Amazon ECS-optimized Amazon Linux 2 (arm64) AMI の場合:
aws ssm get-parameters --names /aws/service/ecs/optimized-ami/amazon-linux-2/arm64/recommended --region
us-east-1
-
Amazon ECS GPU-optimized AMI の場合:
aws ssm get-parameters --names /aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended --region
us-east-1
-
Amazon ECS-optimized Amazon Linux 2 (Inferentia) AMI の場合:
aws ssm get-parameters --names /aws/service/ecs/optimized-ami/amazon-linux-2/inf/recommended --region
us-east-1
-
Amazon ECS-optimized Amazon Linux AMI の場合:
aws ssm get-parameters --names /aws/service/ecs/optimized-ami/amazon-linux/recommended --region
us-east-1
Windows Amazon ECS 最適化 AMI
-
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 2004 Core AMI の場合:
aws ssm get-parameters --names /aws/service/ami-windows-latest/Windows_Server-2004-English-Core-ECS_Optimized --region
us-east-1
-
Amazon ECS 用に最適化された Windows Server 1909 Core AMI の場合:
aws ssm get-parameters --names /aws/service/ami-windows-latest/Windows_Server-1909-English-Core-ECS_Optimized --region
us-east-1
重要 Amazon ECS 用に最適化された Windows Server 1909 Core AMI は非推奨です。この AMI の新しいバージョンはリリースされません。
-
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-optimized Amazon Linux AMI バージョンのメタデータを取得する
特定の Amazon ECS-optimized Amazon Linux AMI バージョンのメタデータを取得するには、AWS CLI で次の AWS CLI コマンドを使用します。AMI 名を、取得する Amazon ECS-optimized Amazon Linux AMI の名前と置き換えます。使用できるバージョンの詳細については、「Amazon ECS 最適化 AMI バージョン」を参照してください。
aws ssm get-parameters --names /aws/service/ecs/optimized-ami/amazon-linux-2/
amzn2-ami-ecs-hvm-2.0.20200928-x86_64-ebs
--regionus-east-1
Systems Manager GetParametersByPath API を使用して Amazon ECS-optimized Amazon Linux 2 AMI メタデータを取得する
Systems Manager GetParametersByPath API を使用して Amazon ECS-optimized Amazon Linux 2 AMI メタデータを取得するには、AWS CLI で次のコマンドを使用します。
aws ssm get-parameters-by-path --path /aws/service/ecs/optimized-ami/amazon-linux-2/ --region
us-east-1
推奨される最新の Amazon ECS-optimized Amazon Linux 2 AMI のイメージ ID を取得する
サブパラメータ image_id
を使用して、推奨される最新の Amazon ECS-optimized Amazon Linux 2 AMI ID のイメージ ID を取得できます。
aws ssm get-parameters --names /aws/service/ecs/optimized-ami/amazon-linux-2/
recommended/image_id
--regionus-east-1
image_id
値のみを取得するには、特定のパラメータ値のみのクエリを行うことができます。次に例を示します。
aws ssm get-parameters --names /aws/service/ecs/optimized-ami/amazon-linux-2/recommended/
image_id
--region us-east-1 --query "Parameters[0].Value
"
AWS CloudFormation テンプレートで推奨される最新の Amazon ECS-optimized AMI を使用する
AWS CloudFormation テンプレートで推奨される最新の Amazon ECS-optimized AMI を取得するには、Systems Manager パラメータストア名を参照します。次に例を示します。
Parameters: ECSAMI: Description: AMI ID Type: AWS::SSM::Parameter::Value<AWS::EC2::Image::Id> Default:
/aws/service/ecs/optimized-ami/amazon-linux-2/recommended/image_id