¿Por qué mi instancia de Linux no arranca después de cambiar su tipo a otro basado en Nitro?

4 minutos de lectura
0

He cambiado mi instancia de Linux de Amazon Elastic Compute Cloud (Amazon EC2) a un tipo de instancia basado en Nitro y ahora no arranca.

Breve descripción

Estos son algunos de los motivos habituales por los que es posible que una instancia de Linux no arranque después de cambiarla a un tipo basado en Nitro:

  • El atributo enaSupport de Elastic Network Adapter (ENA) está deshabilitado para la instancia.
  • El módulo ENA no está instalado en la instancia.
  • El módulo NVMe no está instalado en la instancia o, si lo está, no está cargado en la imagen initramfs de la instancia.
  • Está intentando montar los sistemas de archivos en el momento del arranque en el archivo «/etc/fstab» con un nombre de dispositivo. Los volúmenes de Amazon Elastic Block Store (Amazon EBS) se exponen como dispositivos NVMe a estos tipos de instancias, y los nombres de los dispositivos se modifican. Para evitarlo, monte los sistemas de archivos mediante UUID/Label. Para obtener más información, consulte Amazon EBS y NVMe en instancias de Linux.

Para solucionar estos problemas, confirme que ENA esté activado y que su instancia de Linux cumpla los requisitos de montaje del sistema de archivos y del módulo de instancias basado en Nitro.

Como alternativa, también puede ejecutar el runbook AWSSupport-MigrateXenToNitroLinux de Automatización de AWS Systems Manager. Este runbook migra una instancia Xen de Linux de Amazon EC2 sin necesidad de configuración manual. Para obtener más información, consulte AWSSupport-MigrateXenToNitroLinux.

Resolución

Comprobar si ENA está activado

1.    Para confirmar que ENA está activado, consulte Probar si las redes mejoradas están habilitadas y, a continuación, siga las instrucciones del atributo de instancia (enaSupport).

2.    Si ENA no está activado, ejecute la acción modify-instance-attribute. Para obtener más información, consulte Habilitar las redes mejoradas en Amazon Linux AMI.

Ejecutar el script NitroInstanceChecks

El script NitroInstanceChecks comprueba la instancia y proporciona un estado que indica si se cumplen o no los siguientes requisitos:

  • Comprueba que el módulo NVMe esté instalado en la instancia. Si está instalado, el script verifica si el módulo está cargado en la imagen de initramfs.
  • Comprueba que el módulo ENA esté instalado en la instancia.
  • Analiza /etc/fstab y busca los dispositivos de bloques que se estén montando mediante los nombres de los dispositivos.

Este script es compatible con las siguientes versiones del sistema operativo:

  • Derivados de Red Hat: Red Hat Linux, Red Hat Enterprise Linux, CentOS
  • Amazon Linux, Amazon Linux 2 y Amazon Linux 2023
  • Derivados de Debian: Debian, Ubuntu

Nota: Para obtener más información sobre el controlador ENA de Red Hat, consulte How do I install and activate the latest ENA driver for enhanced network support on an Amazon EC2 instance running Red Hat 6/7?

Para ejecutar el script NitroInstanceChecks:

1.    Tome una instantánea de su volumen o cree una imagen de máquina de Amazon (AMI) de una instancia antes de realizar cualquier cambio para tener una copia de seguridad.

2.    Cambie su tipo de instancia al tipo original.

3.    Descargue el script de GitHub a su instancia y defínalo como ejecutable:

# chmod +x nitro_check_script.sh

4.    Ejecute el script como usuario raíz o sudo:

# sudo ./nitro_check_script.sh

5.    Cuando se le solicite, escriba y o n (o No): Escriba y para que el script regenere y modifique el archivo /etc/fstab y, a continuación, sustituya el nombre del dispositivo de cada partición por su UUID. El archivo fstab original se guarda como /etc/fstab.backup.$(date +%F-%H:%M:%S). Por ejemplo, /etc/fstab.backup.2019-09-01-22:06:05. Escriba n o No para imprimir el archivo /etc/fstab correcto en el resultado, pero sin reemplazarlo.

Un resultado correcto se parecería a este:

------------------------------------------------
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.    Cuando se cumplan todos los requisitos, cambie la instancia a un tipo basado en Nitro.

OFICIAL DE AWS
OFICIAL DE AWSActualizada hace 2 años