«前の日記(2014-05-22 (Thu)) 最新 次の日記(2014-06-15 (Sun))» 編集

雑記帳


2014-05-30 (Fri) [長年日記]

[AWS] EC2にマウントされているEBSのボリュームIDを取得するワンライナー

$ aws ec2 describe-instances \
  --instance-ids `curl -s http://169.254.169.254/latest/meta-data/instance-id` \
  --region `curl -s http://169.254.169.254/latest/dynamic/instance-identity/document | \
  jq -r ".region"` --query 'Reservations[*].Instances[*].BlockDeviceMappings[*].[Ebs.VolumeId, DeviceName]' --output text

出力例

vol-deadbeef	/dev/sda1
vol-baddcafe	/dev/sdb

EC2が稼働しているリージョンと、インスタンスIDはメタデータサーバから取得して使っている。あとは、AWS CLIのqueryオプションを使って、EBSのIDとBlockDeviceMappingsを出力している。