Get Hands-on with Amazon EKS - Workshop Event Series
Whether you're taking your first steps with Kubernetes or you're an experienced practitioner looking to sharpen your skills, our Amazon EKS workshop series delivers practical, real-world experience that moves you forward. Learn directly from AWS solutions architects and EKS specialists through hands-on sessions designed to build your confidence with Kubernetes. Register now and start building with Amazon EKS!
Perché la mia istanza EC2 Linux entra in modalità di emergenza quando provo ad avviarla?
Quando avvio la mia istanza Linux Amazon Elastic Compute Cloud (Amazon EC2), l'istanza entra in modalità di emergenza e il processo di avvio ha esito negativo. Quindi l'istanza diventa inaccessibile.
Breve descrizione
Un'istanza potrebbe avviarsi in modalità di emergenza per i seguenti motivi:
- È presente un kernel danneggiato nell'istanza che causa un errore Kernel panic.
- Sono presenti errori di montaggio automatico a causa di voci errate nel file /etc/fstab che causano errori Dependency failed.
Per identificare il tipo di errore, controlla l'output della console dell'istanza.
Risoluzione
Errori Kernel panic
Se è presente un problema con il kernel, ricevi un messaggio di errore simile al seguente esempio:
"Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(8,1)"
Si verificano errori Kernel panic quando la configurazione di grub o il file initramfs è danneggiato. Per risolvere il problema, completa i seguenti passaggi:
- Ripristina il kernel a un kernel stabile precedente.
- Riavvia l'istanza.
- Correggi i problemi indicat nel messaggio di errore relativo al kernel danneggiato.
Errori Dependency failed
Si verificano errori Dependency failed quando errori di sintassi nel file /etc/fstab causano errori di montaggio automatico. L'errore si verifica anche quando il volume Amazon Elastic Block Store (Amazon EBS) indicato nel file si scollega dall'istanza. Ricevi un messaggio di errore simile al seguente:
"[[1;33mDEPEND[0m] Dependency failed for /mnt.
[[1;33mDEPEND[0m] Dependency failed for Local File Systems.
[[1;33mDEPEND[0m]
Dependency failed for Migrate local... structure to the new structure.
[[1;33mDEPEND[0m] Dependency failed for Relabel all filesystems, if necessary.
[[1;33mDEPEND[0m] Dependency failed for Mark the need to relabel after reboot.
[[1;33mDEPEND[0m]
Dependency failed for File System Check on /dev/xvdf."
Nell'esempio precedente, durante la sequenza di avvio il punto di montaggio /mnt non è stato montato. Per assicurarti che la sequenza di avvio non entri in modalità di emergenza a causa di errori di montaggio, aggiungi le seguenti configurazioni al file /etc/fstab:
- Un'opzione nofail per le partizioni secondarie, come /mnt.
Nota: l'opzione nofail assicura che la sequenza di avvio non venga interrotta, anche se il montaggio di un volume o di una partizione non riesce. - Uno 0 che disattiva il controllo del file system come ultima colonna del file per il punto di montaggio.
Per aggiornare il file /etc/fstab, utilizza la Console seriale EC2, esegui l'automazione AWSSupport-ExecuteEC2Rescue o modifica manualmente il file utilizzando un'istanza di ripristino.
Importante: prima di arrestare e avviare l'istanza, intraprendi le seguenti azioni:
- Crea un backup del volume EBS.
Nota: se l'istanza è supportata da un archivio dell'istanza o ha volumi di archivio dell'istanza contenenti dati, Amazon EC2 elimina i dati quando arresti l'istanza. - Imposta il comportamento di chiusura dell'istanza su Arresta per assicurarti che le istanze non terminino quando le arresti.
Nota: quando arresti e avvii un'istanza, l'indirizzo IP pubblico dell'istanza cambia. È consigliabile utilizzare un indirizzo IP elastico per indirizzare il traffico esterno all'istanza anziché un indirizzo IP pubblico. Per altre informazioni, consulta Arresta e avvia le istanze Amazon EC2.
Utilizza la Console seriale EC2
Importante: non serve interrompere e avviare l'istanza quando utilizzi la Console seriale EC2.
Se hai attivato la Console seriale EC2 per Linux, puoi utilizzarla per risolvere i problemi relativi ai tipi di istanze basate su Nitro supportati e alle istanze bare metal supportate. Per connetterti all'istanza quando utilizzi la Console seriale EC2, non ti serve una connessione funzionale. Connettiti alla Console seriale EC2, quindi modifica il file /etc/fstab.
Se non hai mai utilizzato la Console seriale EC2 in precedenza, assicurati di rispettare i prerequisiti. Se l'istanza non è raggiungibile e non hai già configurato l'accesso alla Console seriale EC2, non puoi utilizzarla per correggere il file /etc/fstab.
Esegui il documento di automazione AWSSupport-ExecuteEC2Rescue
Prerequisiti: assicurati di avere le autorizzazioni AWS Identity and Access Management (AWS IAM) necessarie per utilizzare AWSSupport-ExecuteEC2Rescue.
Esegui il documento di automazione AWSSupport-ExecuteEC2Rescue per correggere automaticamente i problemi di avvio. Per ulteriori informazioni, consulta Esegui lo strumento EC2 Rescue su istanze irraggiungibili.
Utilizza un'istanza di ripristino per modificare manualmente il file
Completa i seguenti passaggi:
-
Apri la console Amazon EC2.
-
Scegli Istanze, quindi seleziona l'istanza in modalità di emergenza.
-
Scollega il volume root Amazon EBS /dev/xvda o /dev/sda1 dall'istanza interrotta.
-
Avvia un'istanza di ripristino nella stessa zona di disponibilità dell'istanza arrestata.
-
Collega il volume principale all'istanza di ripristino come dispositivo secondario.
Nota: puoi utilizzare nomi di dispositivo diversi quando colleghi volumi secondari. -
Crea una directory del punto di montaggio per il nuovo volume che hai collegato all'istanza di ripristino nel passaggio 6:
sudo mkdir /mnt/rescueNota: sostituisci /mnt/rescue con la directory del tuo punto di montaggio.
-
Per identificare il nome e la partizione del dispositivo a blocchi, esegui questo comando:
[root ~]$ lsblkEsempio di output:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT xvda 202:0 0 8G 0 disk └─xvda1 202:1 0 8G 0 part / xvdf 202:80 0 101G 0 disk └─xvdf1 202:81 0 101G 0 part -
Per montare il volume nella directory del punto di montaggio, esegui questo comando:
sudo mount -o nouuid /dev/xvdf1 /mnt/rescue
Nota: sostituisci /dev/xvdf1 con il nome del tuo dispositivo. Per aprire il file /etc/fstab, esegui questo comando:
sudo vi /mnt/rescue/etc/fstab
- Modifica le voci in /etc/fstab. L'esempio seguente mostra due volumi Amazon EBS definiti con UUID. A entrambi i volumi secondari è stata aggiunta l'opzione nofail e uno 0 come ultima colonna per ogni voce:
$ cat /etc/fstab UUID=e75a1891-3463-448b-8f59-5e3353af90ba / xfs defaults,noatime 1 0 UUID=ce917c0c-9e37-4ae9-bb21-f6e5022d5381 /mnt ext4 defaults,noatime,nofail 1 0
- Salva il file, quindi esegui questo comando per smontare il volume:
sudo umount /mnt/rescue
- Scollega il volume dall'istanza di ripristino.
- Collega il volume all'istanza originale.
- Avvia l'istanza per verificare che possa essere avviata.
- Argomenti
- End User ComputingCompute
- Lingua
- Italiano

Contenuto pertinente
AWS UFFICIALEAggiornata 9 mesi fa