아마존 EC2 인스턴스 타입 검색 기능 추가

속성 별 인스턴스 타입 검색 기능 추가

아마존 EC2는 아마존 웹 서비스의 간판 서비스이면서, 지금은 상당히 복잡한 서비스 중에 하나입니다. AWS에서는 계정 생성 이후 추가적인 설정 없이도 EC2를 사용할 수 있도록 배려가 되어있습니다만, 프로덕션에서 사용하기 위해서는 추가적인 설정들과 함께 다양한 선택을 해야합니다. 그 중에 하나가 바로 EC2 인스턴스 타입입니다. 아마존 웹 서비스에서는 작년 10월 22일 인스턴스 타입을 검색하고 비교할 수 있는 검색 메뉴를 추가했습니다. 이 메뉴는 EC2 웹 콘솔의 인스턴스 유형Instance Types에서 찾아볼 수 있습니다.

비슷한 기능을 제공해온 EC2Instances.info 같은 외부 서비스가 있습니다만, 이 서비스가 공식적으로 내부 메뉴로 들어왔다고 생각할 수 있을 것 같습니다.

인스턴스 타입 검색 기능 사용하기

실제로 서울에서 현재 선택할 수 있는 인스턴스 타입은 188개에 이릅니다. 오레곤 리전의 경우 262개나 됩니다. EC2의 인스턴스 유형 메뉴에서 다음과 같이 검색하는 것이 가능합니다. 다양한 속성들을 기준으로 인스턴스를 필터링하는 것이 가능합니다.

인스턴스의 속성을 기반으로 인스턴스 타입 검색하기

표 오른쪽의 톱니바뀌 아이콘을 클릭하면 컬럼에 표시되는 정보나 페이지네이션 개수를 수정할 수도 있습니다.

표에서 보여질 인스턴스의 속성을 설정할 수 있습니다

인스턴스 타입을 하나 선택할 경우 하단에 해당 인스턴스에 대한 자세한 정보들이 나타납니다.

선택한 인스턴스에 대한 자세한 정보가 나타납니다

인스턴스를 여러개 선택하는 경우 해당 인스턴스 타입을 비교할 수도 있습니다(단 이 기능은 페이지를 이동할 때마다 초기화돼버려서 여러번 검색을 해가면서 여러 인스턴스를 선택하기는 쉽지 않았습니다).

여러 개의 인스턴스를 선택할 경우 비교표가 나타납니다

awscli로 인스턴스 타입 검색하기

API나 awscli로도 이 기능을 사용할 수 있습니다. DescribeInstanceTypesDescribeInstanceTypeOfferings 두 개의 API가 제공됩니다.

먼저 첫 번째 명령어 describe-instance-types를 사용하면 특정 조건으로 인스턴스 타입을 검색하는 것이 가능합니다. 이 명령어의 filters 옵션에서 사용할 수 있는 모든 속성은 공식 문서에서 확인할 수 있습니다. 아래 명령어는 VCPU가 48개인 인스턴스를 필터링합니다.

$ aws ec2 describe-instance-types --location-type "region" --filters "Name=vcpu-info.default-vcpus,Values=48"
{
  ...

다음으로 describe-instance-type-offerings 명령어는 특정 리전이나 가용존에서 사용할 수 있는 인스턴스 타입 목록을 내려줍니다. describe-instance-types에서 사용가능한 filters 속성은 별도로 사용할 수 없고, 현재 awscli에 지정된 리전을 기준으로 동작하는 것으로 보였습니다. locaiton-type에는 availability-zone, availability-zone-id, region 셋 중 하나가 올 수 있습니다. 검색 결과는 describe-instance-types보다 훨씬 간결하게 표시됩니다.

$ aws ec2 describe-instance-type-offerings --location-type "region"
{
  ...

여기까지 아마존 EC2 인스턴스 타입 검색 기능에 대해서 소개했습니다.