AMI에서 EC2 인스턴스를 시작하려고 할 때 일부 인스턴스 유형을 사용할 수 없는 이유가 무엇입니까?

2분 분량
0

Amazon Machine Image(AMI)에서 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스를 시작하고 싶습니다. 시작하려는 인스턴스 유형을 사용할 수 없습니다.

간략한 설명


AWS Graviton 프로세서는 x86_64(AMD64) 대신 aarch64(ARM64) 아키텍처를 사용합니다. 다음은 AWS Graviton 프로세서를 사용하는 몇 가지 인스턴스 유형입니다.

  • 일반 용도: M7g, M6g, A1, T4g
  • 컴퓨팅 최적화: C7g, C7gn, C6g, C6gn
  • 메모리 최적화: R7g, R6g, X2gd
  • 가속 컴퓨팅: G5g
  • 스토리지 최적화: Im4gn, Is4gen

ARM64 아키텍처는 x86_64 아키텍처 제품군과는 다른 CPU 명령어 세트를 사용합니다. 이러한 명령어는 프로세서에 명령을 보내는 메커니즘을 제공합니다. 소프트웨어 컴파일 중에 사람이 읽을 수 있는 소프트웨어 코드는 CPU 아키텍처에 특화된 CPU 명령어로 변환됩니다. 해당 아키텍처 유형의 모든 CPU는 이러한 CPU 명령어를 사용할 수 있습니다. 그러나 한 아키텍처 유형의 CPU는 다른 유형의 명령어 세트를 이해하지 못합니다. 한 아키텍처에서 컴파일된 AMI는 해당 아키텍처 유형의 CPU에서만 실행됩니다.

x86_64 아키텍처를 사용하여 생성된 Amazon EC2 인스턴스 및 AMI는 ARM64 아키텍처를 사용하는 인스턴스와 호환되지 않습니다. 인스턴스 유형을 시작하거나 변경할 때 이러한 비호환성으로 인해 다음 중 하나가 발생할 수 있습니다.

  • 선택한 EC2 AMI로 Graviton 인스턴스 유형을 시작하면 시작 마법사가 새 인스턴스 유형을 사용할 수 없는 것으로 표시할 수 있습니다.
  • 새 아키텍처 유형을 사용하지 않는 이미 배포된 EC2 인스턴스의 인스턴스 유형을 변경하면 오류가 발생할 수 있습니다. 오류 메시지는 다음과 비슷합니다.
    “'m6g.large'는 아키텍처 'x86_64'의 'i-xyz'에 대한 유효한 인스턴스 유형이 아닙니다.”

다른 아키텍처를 사용하려면 다음 단계를 완료하세요.

  1. 새 Amazon EC2 인스턴스 또는 AMI를 생성합니다.
  2. 애플리케이션을 새 Amazon EC2 인스턴스로 마이그레이션합니다.

참고: 향상된 네트워킹을 활성화하지 않으면 AMI가 해당 인스턴스 유형과 호환되지 않을 수 있습니다. 자세한 내용은 EC2 인스턴스에서 향상된 네트워킹을 활성화하고 구성하려면 어떻게 해야 합니까?를 참조하세요.

해결 방법

새 Amazon EC2 인스턴스 또는 AMI 생성

주요 Linux 배포판 모두 ARM 아키텍처에서 사용할 수 있습니다. ARM 아키텍처를 사용하는 인스턴스를 시작하려면:

  1. Amazon EC2 콘솔을 엽니다.
  2. 인스턴스 시작을 선택한 다음 인스턴스 시작을 선택합니다.
  3. 배포판의 ARM 버전에 해당하는 AMI 옆에 있는 **64비트(ARM)**를 선택한 다음 선택을 선택합니다.
  4. 인스턴스 시작을 완료합니다.

애플리케이션을 새 Amazon EC2 인스턴스로 마이그레이션

명령어 세트가 다르기 때문에 아키텍처 유형 사이의 직접적인 인스턴스 유형 변경은 불가능합니다. 시스템을 새 아키텍처로 마이그레이션하려면 다음 단계를 완료하세요.

  1. 선택한 구성에 맞는 새 EC2 인스턴스를 시작합니다.
  2. 애플리케이션을 새 EC2 인스턴스로 마이그레이션합니다.

관련 정보

AWS Graviton 프로세서

AWS 공식
AWS 공식업데이트됨 10달 전
댓글 없음