Linux 인스턴스의 유형을 Nitro 기반 인스턴스 유형으로 변경한 후에 부팅이 되지 않는 이유는 무엇입니까?

3분 분량
0

Amazon EC2(Amazon Elastic Compute Cloud) Linux 인스턴스를 Nitro 기반 인스턴스 유형으로 변경했는데 이제는 부팅이 되지 않습니다.

간략한 설명

Nitro 기반 유형으로 변경한 후 Linux 인스턴스가 부팅되지 않는 몇 가지 일반적인 이유는 다음과 같습니다.

  • 인스턴스의 ENA(Elastic Network Adapter) enaSupport 속성이 비활성화되었습니다.
  • ENA 모듈이 인스턴스에 설치되지 않았습니다.
  • NVMe 모듈이 인스턴스에 설치되지 않았거나, 설치되었어도 NVMe 모듈이 인스턴스의 initramfs 이미지에 로드되지 않았습니다.
  • 부팅 시 디바이스 이름을 사용하여 "/etc/fstab" 파일에 파일 시스템을 마운트하려고 합니다. Amazon Elastic Block Store(EBS) 볼륨은 이러한 인스턴스 유형에 NVMe 디바이스로 공개되고, 디바이스 이름이 변경됩니다. 이를 방지하기 위해 UUID/레이블을 사용하여 파일 시스템을 마운트합니다. 자세한 내용은 Linux 인스턴스의 Amazon EBS 및 NVMe를 참조하세요.

이러한 문제를 해결하려면 ENA가 활성화되어 있고 Linux 인스턴스가 Nitro 기반 인스턴스 모듈 및 파일 시스템 탑재 요구 사항을 충족하는지 확인하십시오.

또는 AWSSupport-MigrateXenToNitroLinux Systems Manager 자동화 런북을 실행할 수도 있습니다. 이 런북은 수동 구성 없이 Amazon EC2 Linux Xen을 마이그레이션합니다. 자세한 내용은 AWSSupport-MigrateXenToNitroLinux을 참조합니다.

해결 방법

ENA가 켜져 있는지 확인합니다.

1.    ENA가 활성화되어 있는지 확인하려면 향상된 네트워킹 기능 활성화 여부 확인을 참조한 다음 **인스턴스 속성(enaSupport)**에 있는 지침을 따릅니다.

2.    ENA가 비활성화된 경우 modify-instance-attribute 작업을 실행합니다. 자세한 내용은 Amazon Linux AMI에서 향상된 네트워킹 활성화를 참조하십시오.

NitroInstanceChecks script 스크립트 실행

NitroInstanceChecks 스크립트는 인스턴스를 검사하고 다음 요구 사항의 통과/실패 상태를 제공합니다.

  • NVMe 모듈이 인스턴스에 설치되어 있다는 걸 확인합니다. 설치되었으면, 스크립트는 모듈이 initramfs 이미지에 로드되었는지 확인합니다.
  • ENA 모듈이 인스턴스에 설치되어 있다는 걸 확인합니다.
  • /etc/fstab를 분석하고 디바이스 이름을 사용하여 마운트할 블록 디바이스를 찾습니다.

이 스크립트는 다음 OS 버전에서 지원됩니다.

  • Red Hat 계열: Red Hat Linux, Red Hat Enterprise Linux, CentOS
  • Amazon Linux, Amazon Linux 2
  • Debian 파생 운영 체제: Debian, Ubuntu

참고: Red Hat의 ENA 드라이버에 대한 자세한 내용은 Red Hat 6/7을 실행 중인 Amazon EC2 인스턴스에서 향상된 네트워크 지원을 위해 최신 ENA 드라이버를 설치하고 활성화하려면 어떻게 해야 합니까?

NitroInstanceChecks 스크립트를 실행하려면 다음을 수행합니다.

1.    변경하기 전에 볼륨의 스냅샷을 생성하거나 인스턴스의 Amazon Machine Image(AMI)를 생성하여 백업을 만듭니다.

2.    인스턴스 유형을 원래 유형으로 변경합니다.

3.    인스턴스에 스크립트를 다운로드하고 실행 가능하게 설정합니다.

# chmod +x nitro_check_script.sh

4.    루트 사용자 또는 sudo로 스크립트를 실행합니다.

# sudo ./nitro_check_script.sh

5.    프롬프트에서 y 또는 n(또는 No)을 입력합니다. /etc/fstab 파일을 재생성하고 수정하여 각 파티션의 디바이스 이름을 UUID로 대체하려면 y를 입력합니다. 원본 fstab 파일은 /etc/fstab.backup.$(date +%F-%H:%M:%S)로 저장됩니다. 예: /etc/fstab.backup.2019-09-01-22:06:05. 대체하지 않고 출력에 올바른 /etc/fstab 파일을 인쇄하려면 n 또는 No를 입력합니다.

성공적인 출력은 다음과 같습니다.

------------------------------------------------
OK  NVMe Module is installed and available on your instance
OK  ENA Module is installed and available on your instance
OK  fstab file looks fine and does not contain any device names.
------------------------------------------------

6.    모든 요구 사항이 충족되었으면 인스턴스를 Nitro 기반 인스턴스 유형으로 변경합니다.


AWS 공식
AWS 공식업데이트됨 6달 전