Por que minha instância do Linux não está inicializando depois que alterei para um tipo de instância baseado em Nitro?
Mudei minha instância do Linux do Amazon Elastic Compute Cloud (Amazon EC2) para um tipo de instância baseada em Nitro e agora ela não inicializa.
Breve descrição
Aqui estão alguns motivos comuns que podem fazer com que uma instância do Linux não inicialize após ser alterada para um tipo baseado em Nitro:
- O atributo enaSupport do Adaptador de Rede Elástica (ENA) está desativado para a instância.
- O módulo ENA não está instalado na instância.
- O módulo NVMe não está instalado na instância ou, se estiver, o módulo NVMe não é carregado na imagem initramfs da instância.
- Você está tentando montar os sistemas de arquivos no momento da inicialização no arquivo “/etc/fstab” usando um nome de dispositivo. Os volumes do Amazon Elastic Block Store (Amazon EBS) são expostos como dispositivos NVMe a esses tipos de instância e os nomes dos dispositivos estão alterados. Para evitar isso, monte os sistemas de arquivos usando UUID/Label. Para obter mais informações, consulte Amazon EBS e NVMe em instâncias do Linux.
Para resolver esses problemas, confirme se o ENA está ativado e se sua instância do Linux atende aos requisitos de montagem do sistema de arquivos e do módulo de instância baseado em Nitro.
Você também pode executar o runbook AWSSupport-MigrateXenToNitroLinux do Systems Manager Automation. Esse runbook migra um Amazon EC2 Linux Xen sem configuração manual. Para obter mais informações, consulte AWSSupport-MigrateXenToNitroLinux.
Resolução
Verifique se o ENA está ativado
1. Para confirmar se o ENA está ativado, consulte Testar se a rede avançada está ativada e siga as instruções em Atributo de instância (enaSupport).
2. Se o ENA não estiver ativado, execute a ação modify-instance-attribute. Para obter mais informações, consulte Para habilitar redes avançadas no Amazon Linux AMI.
Execute o script NitroInstanceChecks
O script NitroInstanceChecks verifica sua instância e fornece um status de aprovação/reprovação dos seguintes requisitos:
- Verifica se o módulo NVMe está instalado na sua instância. Se estiver instalado, o script verifica se o módulo está carregado na imagem initramfs.
- Verifica se o módulo ENA está instalado na sua instância.
- Analisa /etc/fstab e procura dispositivos de blocos que estão sendo montados usando nomes de dispositivos.
Esse script é compatível com as seguintes versões do sistema operacional:
- Derivados da Red Hat: Red Hat Linux, Red Hat Enterprise Linux, CentOS
- Amazon Linux, Amazon Linux 2 e Amazon Linux 2023
- Derivados do Debian: Debian, Ubuntu
Observação: para obter mais informações sobre o driver ENA na 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? (Como instalar e ativar o driver ENA mais recente para suporte de rede avançada em uma instância do Amazon EC2 que executa o Red Hat 6/7?)
Para executar o script NitroInstanceChecks:
1. Tire um snapshot do volume ou crie uma imagem de máquina da Amazon (AMI) de uma instância antes de fazer qualquer alteração, garantindo que você tenha um backup.
2. Altere seu tipo de instância para o tipo original.
3. Baixe o script do GitHub para sua instância e torne-o executável:
# chmod +x nitro_check_script.sh
4. Execute o script como usuário raiz ou sudo:
# sudo ./nitro_check_script.sh
5. No prompt, digite y ou n (ou No): Digite y para que o script regenere e modifique o arquivo /etc/fstab e depois substitua o nome do dispositivo de cada partição pelo seu UUID. O arquivo fstab original é salvo como /etc/fstab.backup.$(data +%F-%H:%M:%S). Por exemplo, /etc/fstab.backup.2019-09-01-22:06:05. Digite n ou No para imprimir o arquivo /etc/fstab correto na saída, mas sem substituí-lo.
Uma saída bem-sucedida tem a seguinte aparência:
------------------------------------------------ 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. Depois que todos os requisitos forem atendidos, altere a instância para um tipo de instância baseado em Nitro.
Vídeos relacionados
Conteúdo relevante
- AWS OFICIALAtualizada há um ano
- Por que minha instância Linux do EC2 está entrando no modo de emergência quando tento inicializá-la?AWS OFICIALAtualizada há um ano
- AWS OFICIALAtualizada há 2 anos
- AWS OFICIALAtualizada há um ano