1. ホーム
  2. amazon-ec2

[解決済み】ec2インスタンスからインスタンスIDを取得する方法は?

2022-03-24 19:19:29

質問

を調べるにはどうしたらよいですか? instance id をec2インスタンスの内部で使用できますか?

解決方法を教えてください。

参照 EC2 のドキュメントを参照してください。 .

実行します。

wget -q -O - http://169.254.169.254/latest/meta-data/instance-id

スクリプト内からインスタンスIDにプログラム的にアクセスする必要がある場合。

die() { status=$1; shift; echo "FATAL: $*"; exit $status; }
EC2_INSTANCE_ID="`wget -q -O - http://169.254.169.254/latest/meta-data/instance-id || die \"wget instance-id has failed: $?\"`"

より高度な使用例です(インスタンスIDだけでなく、アベイラビリティゾーンやリージョンなども取得する)。

EC2_INSTANCE_ID="`wget -q -O - http://169.254.169.254/latest/meta-data/instance-id || die \"wget instance-id has failed: $?\"`"
test -n "$EC2_INSTANCE_ID" || die 'cannot obtain instance-id'
EC2_AVAIL_ZONE="`wget -q -O - http://169.254.169.254/latest/meta-data/placement/availability-zone || die \"wget availability-zone has failed: $?\"`"
test -n "$EC2_AVAIL_ZONE" || die 'cannot obtain availability-zone'
EC2_REGION="`echo \"$EC2_AVAIL_ZONE\" | sed -e 's:\([0-9][0-9]*\)[a-z]*\$:\\1:'`"

を使用することもできます。 curl の代わりに wget あなたのプラットフォームで何がインストールされているかによります。