AWS Compute Optimizer에서 EC2 인스턴스의 권장 사항을 받아 보고 최적화해 보기

AWS Compute Optimizer에서 EC2 인스턴스의 권장 사항을 받아 보고 최적화해 보기

AWS Compute Optimizer에서 EC2 인스턴스의 권장 사항을 받아 보고 최적화를 실시해 봤습니다.
Clock Icon2025.05.22

안녕하세요 클래스메소드 김재욱(Kim Jaewook) 입니다. 이번에는 AWS Compute Optimizer에서 EC2 인스턴스의 권장 사항을 받아 보고 최적화를 실시해 봤습니다.

AWS Compute Optimizer에서 EC2 권장 사항

지난 번에는 AWS Compute Optimizer에서 Amazon EBS에 대한 권장 사항을 받아보는 방법에 대해서 정리했습니다.

https://dev.classmethod.jp/articles/jw-no-recommendations-available-for-this-volume-workaround-in-aws-compute-optimizer/

AWS 공식 문서에 의하면 각 리소스별로 권장 사항을 생성하는 요구 사항이 다르다는 것을 확인할 수 있습니다.

https://docs.aws.amazon.com/ko_kr/compute-optimizer/latest/ug/requirements.html

Amazon EC2 인스턴스에는 최근 14일 동안 30시간 이상의 CloudWatch 지표 데이터가 필요합니다.

EC2 인스턴스에 대한 권장 사항은 공식 문서에서 확인해 보면 최근 14일 동안 30시간 이상의 CloudWatch 지표 데이터가 필요하다고 합니다.

AWS Compute Optimizer에서 권장 사항 확인

약 30시간이 지난 다음 AWS Compute Optimizer 콘솔 화면으로 이동해 보면 EC2 인스턴스에 대한 권장 사항이 생성된 것을 확인할 수 있습니다.

jw-blg-com30h-1

보다 상세한 권장 사항을 확인해 보면 총 세 가지의 옵션을 제공하고 있는 것을 확인할 수 있습니다. 현재 EC2 인스턴스는 t2.micro 인스턴스 타입으로 생성했으며, 별다른 작업은 진행하고 있지 않기 때문에 메모리, CPU 사용량은 현저히 낮은 편입니다. 이에 맞추어 AWS Compute Optimizer에서도 비용 절감을 위한 옵션을 제공하고 있는 모습입니다.

이번에는 시간 당 0.0108 28.95%를 절감할 수 있는 t4g.micro로 변경하는 것이 비용 최적화의 방법입니다. 여기서 출력하고 있는 요금은 해당 EC2 인스턴스가 생성된 리전의 요금을 의비합니다.

jw-blg-com30h-2

다만, 주의할 점으로는 t2.micro의 경우 x86_64 아키텍처를 기반으로 하고 있기 때문에 ARM 아키텍처 기반인 t4g.micro으로 변경할 수는 없습니다. 실제로 변경을 시도해 보면 아래와 같은 메시지가 출력됩니다.

‘t4g.micro’ is not a valid instance type for instance ‘i-xxxxxxx’ of architecture ‘x86_64’.

이처럼 변경이 불가능한 EC2 인스턴스 타입도 권장 사항으로써 추천해 주고 있기 때문에 주의가 필요합니다.

이번에는 t2.micro처럼 x86_64 아키텍처 기반에 보다 저렴하게 사용할 수 있는 t3.micro로 변경해 보도록 하겠습니다.

마이그레이션은 어떻게 해야 해?

AWS Compute Optimizer는 권장 사항을 제공할 뿐이지 마이그레이션 기능을 제공하지는 않습니다.

권장 사항을 받아봤다면, 여러 옵션 중 하나를 선택해서 수동으로 마이그레이션 작업을 실시할 필요가 있습니다.

EC2 콘솔 화면에서 [작업]→[인스턴스 설정]→[인스턴스 유형 변경]을 클릭합니다.

jw-blg-com30h-3

[t3.micro]를 검색하면 현재 설정된 EC2 인스턴스 타입과 검색한 인스턴스 타입을 비교하는 표를 확인할 수 있습니다. t3.micro를 확인한 다음, 변경을 시도합시다.

jw-blg-com30h-5

변경된 EC2 인스턴스의 인스턴스 타입은 콘솔 화면에서 확인할 수 있습니다.

jw-blg-com30h-6

AWS CLI를 활용해서 EC2 인스턴스의 타입을 확인할 수도 있습니다.

aws ec2 describe-instances \
  --instance-ids i-xxxxxxxxx \
  --query 'Reservations[].Instances[].InstanceType' \
  --region ap-northeast-1 \
  --output text

t3.micro

본 블로그 게시글을 읽고 궁금한 사항이 있으신 분들은 jaewookkim533@yahoo.com로 보내주시면 감사하겠습니다.

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.