On an EC2 instance we can retrieve some of it's metadata by using curl. Let's see how
If we use the following curl on an EC2 instance we will be able to see the different metadata we are going to be able to retrieve:
$ curl http://169.254.169.254/latest/meta-data/ ami-id ami-launch-index ami-manifest-path block-device-mapping/ events/ hostname iam/ identity-credentials/ instance-action instance-id instance-life-cycle instance-type local-hostname local-ipv4 mac metrics/ network/ placement/ profile public-keys/ reservation-id security-groups services/
For example, we can get the instance ID using the following command:
$ curl http://169.254.169.254/latest/meta-data/instance-id i-0f672e225d382a524
This IP address (169.254.169.254) is a link-local address it's just reachable from the instance and according to AWS documentation we are not going to get billed for HTTP requests used to retrieve instance metadata and user data.
Posted on 24/03/2021