まえがき

cloudpackサポートです。

弊社では、お客様のEC2インスタンスで保守作業をすることがあります。
その際、作業するEC2インスタンスに間違いがあってはいけませんので、
インスタンスメタデータ(以降メタデータ)からインスタンスIDを取得して作業対象に間違いがないことを確認しています。

では、みなさんは普段どのようにEC2インスタンスのメタデータを取得していますか。
curl や wget で以下のURLにアクセスして取得しているというかたも多いのではないでしょうか。

http://169.254.169.254/latest/meta-data/

取得方法として間違ってはいないものの、メタデータを確認したい時にを毎回URLを入力またはコピペするのは手間ですよね。
そこで、今回は簡単にメタデータを取得できるコマンド ec2-metadata をご紹介します。

ec2-metadata とは

ec2-metadataは、Amazon Linux系で標準搭載されているコマンドで、簡単にメタデータを取得することができます。

今回は、Amazon Linux 2 の環境を用意して ec2-metadata を実行してみます。

  • Amazon Linux 2
    • ami-0329eac6c5240c99d (amzn2-ami-kernel-5.10-hvm-2.0.20230221.0-x86_64-gp2)

Amazon Linux 2

環境確認

コマンドヘルプを見てみる

Amazon Linux 2には、最初からec2-metadataがインストールされています。
まずは、以下のコマンドを実行してヘルプを見てます。

コマンド
ec2-metadata –help

実行結果

インスタンスIDを取得してみる

試しに検証環境のインスタンスIDを取得してみます。
ヘルプからコマンドは以下になります。

実行コマンド
ec2-metadata -i

実行結果

インスタンスIDを取得することができました。

同時に複数のメタデータを取得してみる

次にインスタンスIDと作成に利用したAMI IDを同時に取得してみます。
ヘルプからコマンドは以下になります。

実行コマンド
ec2-metadata -i -a

実行結果

インスタンスIDとAMI IDを同時に取得できました。
このようにオプションを複数指定することで、複数のメタデータを同時に取得できるようです。

おわりに

今回は、curl や wget を使わなくてもメタデータを取得することができる便利なコマンド ec2-metadataコマンドについてご紹介しました。
長いURLを打たずともメタデータを取得することができますので、是非活用してみてください。