AMI 허용 인스턴스 유형
AMI 소유자는 AMI가 지원하거나 지원하지 않는 인스턴스 유형을 지정할 수 있습니다. 이렇게 하면 호환되지 않는 인스턴스 유형이 시작되지 않습니다. Amazon EC2는 시작 시 허용되는 인스턴스 유형을 적용합니다.
예를 들어 AMI에 GPU 하드웨어가 필요한 경우 GPU 인스턴스 유형으로만 제한할 수 있습니다. AMI가 특정 인스턴스 패밀리와 호환되지 않는 경우 허용되는 인스턴스 유형에서 해당 패밀리를 제외할 수 있습니다.
허용되는 인스턴스 유형 작동 방식
AMI의 InstanceTypeSpecification 속성을 통해 허용되는 인스턴스 유형을 제어합니다. 이 속성에는 두 개의 목록이 포함되어 있습니다.
-
SupportedInstanceTypes– AMI가 지원하는 인스턴스 유형입니다. 이러한 인스턴스 유형만 AMI를 사용하여 시작할 수 있습니다. -
UnsupportedInstanceTypes– AMI가 지원하지 않는 인스턴스 유형입니다. 다른 모든 인스턴스 유형은 AMI를 사용하여 시작할 수 있습니다.
Amazon EC2는 다음 로직을 사용하여 사양을 평가합니다.
-
InstanceTypeSpecification이 설정되지 않은 경우 Amazon EC2는 모든 인스턴스 유형을 허용합니다. 이는 기본 설정 동작입니다. -
SupportedInstanceTypes만 설정된 경우 지정된 인스턴스 유형만 허용됩니다. Amazon EC2는 다른 모든 인스턴스 유형을 차단합니다. -
UnsupportedInstanceTypes만 설정된 경우 Amazon EC2는 지정된 인스턴스 유형을 제외한 모든 인스턴스 유형을 허용합니다. -
두 목록이 모두 설정된 경우 인스턴스 유형은
SupportedInstanceTypes에 포함되어야 하고UnsupportedInstanceTypes에 포함되지 않아야 합니다.
와일드카드 지원
두 목록 모두 * 문자를 사용하는 와일드카드 패턴을 지원합니다. 와일드카드를 사용하면 각 인스턴스 유형을 개별적으로 나열하지 않고도 여러 인스턴스 유형을 일치시킬 수 있습니다.
다음 표에는 와일드카드 패턴의 예가 나와 있습니다.
| 패턴 | 일치 항목 |
|---|---|
t3.* |
t3 인스턴스 패밀리 내의 모든 크기(예: t3.micro, t3.small, t3.large) |
p4d.* |
p4d 인스턴스 패밀리 내의 모든 크기 |
g5.* |
g5 인스턴스 패밀리 내의 모든 크기 |
*xlarge |
모든 인스턴스 패밀리에서 xlarge 이상인 모든 인스턴스 유형 |
*.12xlarge |
모든 인스턴스 패밀리에서 모든 12xlarge 인스턴스 유형 |
AMI에 허용되는 인스턴스 유형 설정
Amazon EC2 콘솔 또는 AWS Command Line Interface(AWS CLI)를 사용하여 AMI에 허용되는 인스턴스 유형을 설정하거나 변경할 수 있습니다. 이 절차를 수행하려면 AMI 소유자여야 합니다.
AMI에 허용되는 인스턴스 유형 보기
Amazon EC2 콘솔 또는 AWS CLI를 사용하여 AMI의 인스턴스 유형 사양을 볼 수 있습니다.
허용되는 인스턴스 유형을 사용한 시작 동작
인스턴스를 시작할 때 Amazon EC2는 지정된 인스턴스 유형이 AMI의 인스턴스 유형 사양과 호환되는지 확인합니다. 인스턴스 유형이 허용되지 않는 경우 Amazon EC2는 시작을 차단하고 오류를 반환합니다.
예: 차단된 시작
다음 명령은 t3.micro를 지원하지 않는 AMI를 사용하여 t3.micro 인스턴스를 시작하려고 시도합니다.
aws ec2 run-instances \ --image-idami-1234567890abcdef0\ --instance-type t3.micro
Amazon EC2는 다음 오류를 반환합니다.
An error occurred (InvalidParameterCombination) when calling the RunInstances operation: This AMI does not support the specified instance type. Check DescribeImages for InstanceTypeSpecification, and try again.
이 오류를 해결하려면 AMI가 지원하는 인스턴스 유형을 선택합니다. describe-images 명령을 사용하여 AMI의 인스턴스 유형 사양을 봅니다.
고려 사항
허용되는 인스턴스 유형을 사용할 때는 다음 정보를 염두에 두세요.
-
기본적으로 AMI에는 인스턴스 유형 사양이 없습니다. 사양을 명시적으로 설정할 때까지 Amazon EC2는 모든 인스턴스 유형을 허용합니다.
-
AMI 소유자만 인스턴스 유형 사양을 설정하거나 변경할 수 있습니다.
-
CopyImage를 사용하여 AMI를 복사하면 Amazon EC2는 새 AMI에 인스턴스 유형 사양을 유지합니다. -
Amazon EC2는 인스턴스 유형 사양을 하드 블록으로 적용합니다. 해당 인스턴스 유형이 허용되지 않으면 시작이 실패하고
InvalidParameterCombination오류가 발생합니다. -
사양은 기존 인스턴스에 영향을 주지 않습니다. 새로 시작하는 인스턴스에만 적용됩니다.
-
인스턴스 유형 사양이 있는 AMI를 참조하는 시작 템플릿 및 Auto Scaling 그룹은 구성된 인스턴스 유형이 허용되지 않는 경우 실패할 수 있습니다. 공유 AMI에서 사양을 설정하기 전에 호환성을 확인하는 것이 좋습니다.
-
ReplaceImageInstanceTypeSpecification작업은 전체 사양을 대체합니다. 개별 인스턴스 유형을 추가 또는 제거하려면 요청에 업데이트된 전체 사양을 포함해야 합니다.