내가 사용하는 AMI 정보 확인하기

내가 사용하는 AMI 정보 확인하기

AMI정보를 확인하고 조사하는 방법에 대하여 작성한 글입니다.
2025.09.25

안녕하세요 클래스메소드의 이수재입니다.

2026년 6월 30일의 Amazon Linux2(AL2)가 지원 종료에 맞추어 OS를 변경하기 위해 조사를 진행중인 케이스가 많습니다.
혹은 여러 환경을 운용하다 보면 복수의 AMI를 저장하게 되고 AMI 정보를 제대로 관리하지 않아서 특정 AMI가 무슨 OS였는지 알 수 없는 경우도 있습니다.
이 글에서는 사용중인 AMI에 대한 정보를 확인하는 방법을 알아봅니다.

AWS 상에서 확인할 수 있는 정보

AWS에서 제공하는 정보만으로 사용하는 AMI가 어떤 OS인지 100% 확신하는 것은 어렵습니다.
퍼블릭 이미지라면 필요한 정보가 AMI 이름에 바로 표기가 되어 있는 경우가 많으므로 대부분 문제가 없지만 그렇지않은 경우에는 [플랫폼 세부 정보, 원본, 설명, 소유자 계정 ID] 등의 정보를 토대로 OS를 어느정도 추론할 수 있습니다.

플랫폼 세부 정보
우선 콘솔이나 CLI로 OS의 플랫폼 정보는 확인할 수 있습니다.

원본
해당 AMI가 복사본인 경우 어떤 원본을 바탕으로 생성되었는지 확인할 수 있습니다.
만약 복사본 AMI에는 AMI 이름에 OS 정보가 담겨있지 않지만 원본 AMI에는 OS 정보가 담겨있는 경우가 있으므로 확인해보는 것이 좋습니다.

설명
AMI 이름이 없더라도 AMI 설명란에 AMI에 대한 대략적인 내용이 적혀있는 경우도 있습니다.

소유자 계정 ID
퍼블릭 AMI인 경우 소유자 계정 ID을 바탕으로 검색하여 제공자가 누구인지 확인할 수 있습니다.
예로 들면 아래 이미지에서 AMI 이름으로 이미 AL2023이 베이스인것을 알 수 있지만 소유자 ID 인 679593333241 을 구글링해보면 Rocky Linux의 official AWS AMI 라는 것을 확인할 수 있습니다.

111

AWS 상의 정보로 추정하기 어려운 경우

AWS에서 확인가능한 정보만으로 OS의 추정이 힘든 경우 인스턴스에 접속하여 확인하는 수 밖에 없습니다.
리눅스 인스턴스의 경우 ssh로 접속하여 아래 페이지의 커맨드로 OS 정보를 조사할 수 있습니다.
https://itworld.gmax8.com/22

윈도우 OS 라면 rdp로 접속하여 OS 정보를 확인합니다.
https://support.microsoft.com/ko-kr/windows/windows-디바이스에-대한-정보-찾기-a66d52c8-3323-44fd-8f34-a9497bb935e1

만약 인스턴스를 SSM로 조작할 수 있는 경우, SSM의 명령 실행을 이용하면 인스턴스에 하나하나 접속하지 않고 한번에 커맨드를 실행하여 조사할 수 있습니다.

조사에 도움이 될만한 커맨드

AWS 상에서 확인할 수 있는 정보만 활용하여 AMI와 인스턴스를 조사하는데 도움이 되는 커맨드를 공유합니다.

특정 AMI를 사용하는 인스턴스 확인

아래 커맨드를 실행하여 여러 AMI 목록 중에 이를 사용하는 인스턴스를 확인할 수 있습니다.

			
			AMI_IDS="ami-1234567890abcdef0,ami-0fedcba0987654321"

aws ec2 describe-instances \
  --filters "Name=image-id,Values=$AMI_IDS" \
  --query "Reservations[].Instances[].[InstanceId,ImageId,State.Name,Tags[?Key=='Name'].Value|[0]]" \
  --output table

		

AmazonLinux2 를 사용하는 인스턴스 찾기

AL2인 경우 보통 이름이나 설명에 amzn2 라는 문구를 포함하는 경우가 많습니다.
만약 AMI가 많은 경우 아래 쉘을 실행하여 목록을 확인하고 해당 AMI를 사용하는 인스턴스가 있는지 확인할 수 있습니다.

			
			# AL2로 추정되는 AMI 확인
ami_ids=$(aws ec2 describe-images --owners amazon --filters 'Name=name,Values=amzn2-ami-hvm-*' 'Name=state,Values=available' --query 'Images[].ImageId' --output text)

# 해당 AMI를 사용하는 인스턴스 확인
aws ec2 describe-instances --filters "Name=image-id,Values=$ami_ids" --query 'Reservations[].Instances[].[InstanceId,ImageId,Tags[?Key==`Name`].Value|[0],State.Name]' --output table

		

특정 AMI이름 패턴을 사용하는 인스턴스 찾기

아래 배시 쉘을 실행하여 특정 AMI 이름 패턴을 가지는 AMI와 그 AMI를 사용하는 인스턴스 목록을 출력할 수 있습니다.

			
			#!/bin/bash

# 특정 AMI 이름 패턴(예:ubuntu-*)의 AMI ID를 검색
ami_pattern="ubuntu-*"
ami_ids=$(aws ec2 describe-images --owners 099720109477 --filters "Name=name,Values=$ami_pattern" --query 'Images[].ImageId' --output text)

if [ -n "$ami_ids" ]; then
  echo "AMI IDs found: $ami_ids"
  aws ec2 describe-instances --filters "Name=image-id,Values=$ami_ids" --query 'Reservations[].Instances[].[InstanceId,ImageId,Tags[?Key==`Name`].Value|[0],State.Name]' --output table
else
  echo "No AMIs found matching pattern: $ami_pattern"
fi

		

사용하고 있는 AMI만 출력하기

현재 EC2가 사용하고 있는 AMI만을 출력하는 커맨드입니다.

			
			# 중복 없이 사용하고 있는 AMI 목록을 확인
echo "=== Unique AMIs used by all EC2 instances ==="
echo "AMI_ID | AMI_Name | Owner | Description"
echo "================================================"

aws ec2 describe-instances \
  --query "Reservations[].Instances[].ImageId" \
  --output text | tr '\t' '\n' | sort -u | while read ami_id; do
    if [[ "$ami_id" =~ ^ami- ]]; then
      ami_info=$(aws ec2 describe-images --image-ids $ami_id \
        --query 'Images[0].[Name,OwnerId,Description]' \
        --output text 2>/dev/null)
      if [ $? -eq 0 ]; then
        echo "$ami_id | $ami_info"
      else
        echo "$ami_id | AMI not found or no permission | - | -"
      fi
    fi
done


		

마무리

AL2에서 AL2023으로 변경하는 경우 확인해야하는 내용이 있으므로 아래 글을 참고해주세요.

https://docs.aws.amazon.com/ko_kr/eks/latest/userguide/al2023.html

https://docs.aws.amazon.com/ko_kr/linux/al2023/ug/compare-with-al2.html

긴 글 읽어주셔서 감사합니다.
오탈자 및 내용 피드백은 must01940 지메일로 보내주시면 감사합니다.

문의 사항은 클래스메소드코리아로!

클래스메소드코리아에서는 다양한 세미나 및 이벤트를 진행하고 있습니다.
진행중인 이벤트에 대해 아래 페이지를 참고해주세요.

https://classmethod.kr/board/library

AWS에 대한 상담 및 클래스메소드 멤버스에 관한 문의사항은 아래 메일로 연락주시면 감사드립니다!
Info@classmethod.kr

この記事をシェアする

FacebookHatena blogX

関連記事