AWS CLI로 Amazon EC2 인스턴스의 메타데이터를 확인해봤습니다.

2022.08.31

안녕하세요, 임채정입니다.
이번 블로그에서는 EC2 인스턴스의 메타데이터를 확인해보겠습니다.

아젠다

  1. 메타데이터의 기능 정의
  2. 메타데이터 확인
  3. 마무리

1. 메타데이터의 기능 정의

인스턴스 메타데이터

  • 메타데이터는 실행 중인 인스턴스의 구성 및 관리에 사용할 수 있는 인스턴스 관련 데이터
    • ex) 인스턴스 호스트명, 이벤트, 보안그룹 등등
  • 실행 중인 인스턴스 내에 있는 인스턴스 메타데이터의 모든 카테고리를 보려면 다음 URI 사용
  • IP주소인 169.254.169.254는 링크 로컬주소로, 인스턴스에서만 유효
    • ex) http://169.254.169.254/latest/meta-data/

2. 메타데이터 확인

EC2 구축

먼저 테스트에 사용할 EC2 인스턴스를 구축하겠습니다.
AMI:Amazon Linux 2 AMI
인스턴스 타임:t2.micro
세큐리티 그룹 설정:SSH 22 (내 IP)

메타데이터 확인

EC2 인스턴스에 SSH로 접속한 후, 명령어를 실행해서 메타데이터를 확인해보겠습니다.

** 버전 **

$ curl http://169.254.169.254
1.0
2007-01-19
2007-03-01
2007-08-29
...
2019-10-01
2020-10-27
2021-01-03
2021-03-23
2021-07-15

** 최신 버전에서 검색 **

$ curl http://169.254.169.254/latest/
dynamic
meta-data

** 최신 버전의 메타데이터 리스트 **

$ curl http://169.254.169.254/latest/meta-data/
ami-id
ami-launch-index
ami-manifest-path
block-device-mapping/
events/
hostname
identity-credentials/
instance-action
instance-id
instance-life-cycle
instance-type
local-hostname
local-ipv4
mac
metrics/
network/
placement/
profile
public-hostname
public-ipv4
public-keys/
reservation-id
security-groups

실제 인스턴스 정보와 비교하면서 검색해보겠습니다.

** 인스턴스 ID 검색 **

$ curl http://169.254.169.254/latest/meta-data/instance-id
i-09dff3d478fcfa6bd

** 인스턴스 타입 검색 **

$ curl http://169.254.169.254/latest/meta-data/instance-type
t2.micro

** 인스턴스 퍼블릭 IPv4 DNS 검색 **

$ curl http://169.254.169.254/latest/meta-data/public-hostname
ec2-13-231-205-121.ap-northeast-1.compute.amazonaws.com

** 인스턴스의 IPv4 (프라이빗) 검색 **

$ curl http://169.254.169.254/latest/meta-data/local-ipv4
172.31.14.153

다음과 같이 인스턴스의 정보를 확인할 수 있었습니다.

3. 마무리

이번 블로그에서는 EC2 인스턴스의 메타데이터를 통해 EC2의 다양한 정보를 취득하는 방법에 대해 정리했습니다. 메타데이터의 리스트에서 확인 가능한것처럼 위에서 검색해본 것 이외에도 다양한 정보를 확인할 수 있습니다. 이 블로그에서 검색해보지 않은 정보가 궁금하시면 실제로 해보시는 걸 추천드립니다.