はじめに
EC2でAmazon Linux 2のインスタンスを構築する際に、クイックスタートを選択するとAmazon Linux 2023が自動的に選択されていてAmazon Linux 2の最新のAMIをGUI上で探すときに時間がかかったので、簡単にAMIを探すことができる方法を調べてみました。
AWS CLIで最新のAMI IDを取得してみる
色々な記事・ブログ等を見ましたが、AWS CLIでコマンドでAMI IDを取得していることが多いようでしたので、以下の条件でAWS CLIコマンドでAmazon Linux 2の最新のAMI IDを取得していきたいと思います。
- OS: Amazon Linux 2
- アーキテクチャ: x86_64
- ストレージタイプ: gp2 (汎用SSD)
AWS CLIでdescribe-images
コマンドを利用します。
-
--owners amazon
でAMIの所有者をAmazonにします。 -
--filters "Name=name,Values=amzn2-ami-hvm-2.0.*-x86_64-gp2"
でAMI名を検索します。 -
--query 'sort_by(Images, &CreationDate)[-1].[ImageId]'
でAMIの作成日時に基づいてソートします。 -
--output table
でテーブル形式で出力します。
$ aws ec2 describe-images --owners amazon --filters "Name=name,Values=amzn2-ami-hvm-2.0.*-x86_64-gp2" --query 'sort_by(Images, &CreationDate)[-1]' --output table
----------------------------------------------------------------------------
| DescribeImages |
+---------------------+----------------------------------------------------+
| Architecture | x86_64 |
| CreationDate | 2023-04-11T07:52:19.000Z |
| DeprecationTime | 2025-04-11T07:52:19.000Z |
| Description | Amazon Linux 2 AMI 2.0.20230404.1 x86_64 HVM gp2 |
| EnaSupport | True |
| Hypervisor | xen |
| ImageId | ami-04d6e43069fd7e366 |
| ImageLocation | amazon/amzn2-ami-hvm-2.0.20230404.1-x86_64-gp2 |
| ImageOwnerAlias | amazon |
| ImageType | machine |
| Name | amzn2-ami-hvm-2.0.20230404.1-x86_64-gp2 |
| OwnerId | 137112412989 |
| PlatformDetails | Linux/UNIX |
| Public | True |
| RootDeviceName | /dev/xvda |
| RootDeviceType | ebs |
| SriovNetSupport | simple |
| State | available |
| UsageOperation | RunInstances |
| VirtualizationType | hvm |
+---------------------+----------------------------------------------------+
|| BlockDeviceMappings ||
|+------------------------------------+-----------------------------------+|
|| DeviceName | /dev/xvda ||
|+------------------------------------+-----------------------------------+|
||| Ebs |||
||+--------------------------------+-------------------------------------+||
||| DeleteOnTermination | True |||
||| Encrypted | False |||
||| SnapshotId | snap-0cbea0938fa9ea74b |||
||| VolumeSize | 8 |||
||| VolumeType | gp2 |||
||+--------------------------------+-------------------------------------+||
AWS CLIコマンドで最新のAMIを探すことができました。
さいごに
AWS CLIコマンドを用いて、Amazon Linux 2の最新のAMI IDを取得することができました。
ほかのOSとかでも--filters
の内容を変更することで最新のAMI IDを取得することができそうなので、また試していきたいです。
参考URL