Não consigo me conectar à minha instância Linux do Amazon Elastic Compute Cloud (Amazon EC2) ou estou tendo problemas na inicialização. Quero usar o EC2Rescue para diagnosticar e solucionar problemas do sistema operacional (SO).
Breve descrição
É possível usar o EC2Rescue para Linux para realizar as seguintes ações:
- Colete relatórios de uso do sistema, como vmstat, iostat e mpstat.
- Colete logs e detalhes, como syslog, dmesg, logs de erro de aplicações e logs do AWS Systems Manager.
- Detecte problemas do sistema, como roteamento assimétrico ou rótulos duplicados do dispositivo raiz.
- Corrija automaticamente problemas do sistema, como problemas de permissão de arquivo OpenSSH ou de ativação de parâmetros do kernel.
Observação: se você ativou o Console de Série do EC2, poderá usar o console para solucionar problemas de tipos de instância baseados em Nitro compatíveis. Para obter mais informações, consulte Conecte-se ao Console de Série do EC2. Também é possível usar o runbook AWSSupport-ExecuteEC2Rescue para identificar e corrigir automaticamente os problemas que causam problemas de conexão. Para mais informações, consulte Executar a ferramenta EC2Rescue em instâncias inacessíveis.
Resolução
Pré-requisitos: Certifique-se de que seu sistema atenda aos requisitos de sistema operacional e software do EC2Rescue.
Use o EC2Rescue para solucionar problemas de conexão
Conclua as etapas a seguir:
-
Use a imagem de máquina da Amazon (AMI) da instância com problemas para executar uma instância de resgate em sua nuvem privada virtual (VPC).
Observação: certifique-se de que a nova instância esteja na mesma zona de disponibilidade da instância com problemas. Também é possível usar uma instância existente que esteja na mesma zona de disponibilidade da instância com problemas.
-
Separe o volume raiz do Amazon Elastic Block Store (Amazon EBS) da instância com problemas. Anote o nome do dispositivo, como /dev/xvda e /dev/sda1.
-
Anexe o volume do Amazon EBS à instância de resgate como um dispositivo secundário, como /dev/sdf.
Observação: se o dispositivo raiz da sua instância for um volume suportado pelo Amazon EBS, interrompa e reinicie a instância.
-
Use o SSH para se conectar à instância de resgate.
-
Como usuário-raiz, execute os seguintes comandos para identificar o nome correto do dispositivo:
$ sudo -i
# lsblk
# rescuedev=/dev/xvdf1
Observação: ao executar lsblk, anote o nome do dispositivo na saída. Substitua xvsf1 pelo nome do dispositivo que está conectado à sua instância de resgate.
-
Para selecionar um ponto de montagem temporário existente que ainda não esteja em uso, execute os seguintes comandos:
# rescuemnt=/mnt
# mkdir -p $rescuemnt
Observação: é uma prática recomendada usar /mnt como ponto de montagem.
-
Para montar o sistema de arquivos raiz a partir do volume anexado, execute o seguinte comando:
# mount $rescuedev $rescuemnt
Se a montagem do volume falhar, execute o seguinte comando:
dmesg | tail
Se os logs mostrarem um identificador universal exclusivo (UUID) em conflito, execute novamente o comando anterior com a opção -o nouuid. Exemplo:
mount -o nouuid $rescuedev $rescuemnt
-
Para montar sistemas de arquivos especiais e alterar o diretório raiz para o novo sistema de arquivos, execute o seguinte comando:
# for i in proc sys dev run; do mount --bind /$i $rescuemnt/$i ; done
# chroot $rescuemnt
-
Baixe e instale a ferramenta EC2Rescue para Linux em um volume raiz Linux off-line.
-
Execute o EC2Rescue para Linux sem opções para executar todos os módulos.
-
Com base nos resultados, execute o seguinte comando para ativar a correção dos módulos suportados:
# ./ec2rl run --remediate
- Para sair do chroot e desmontar o dispositivo secundário, execute o seguinte comando:
# exit
# umount $rescuemnt/{proc,sys,dev,run,}
Observação: se a operação de desmontagem falhar, interrompa ou reinicialize a instância de recuperação antes de desmontar o dispositivo secundário.
Separe o volume secundário da instância do EC2 de resgate.
Anexe o volume secundário /dev/sdf à instância original como volume raiz /dev/xvda ou /dev/sda1.
Execute a instância e verifique se ela funciona conforme o esperado.
Use outro método de solução de problemas
Para solucionar ainda mais problemas no nível do sistema operacional, execute as ações a seguir:
Informações relacionadas
Recupere suas instâncias danificadas usando o EC2Rescue e o Amazon EC2 Systems Manager Automation
Solucionar problemas com instâncias Windows do Amazon EC2