Usare Il ripristino automatico di Azure Linux (ALAR) per correggere una macchina virtuale Linux
La prossima volta che è necessario eseguire un ripristino nella macchina virtuale (VM) Linux di Azure, è possibile automatizzare il processo inserendo gli script di ripristino automatico di Azure Linux (ALAR) in modo che funzionino automaticamente. Non è più necessario eseguire il processo manualmente. Questi script semplificano il processo di ripristino e consentono anche agli utenti inesperti di ripristinare facilmente la macchina virtuale Linux.
ALAR usa l'estensione di ripristino della macchina virtuale descritta in Ripristinare una macchina virtuale Linux usando i comandi di ripristino della macchina virtuale di Azure.
ALAR illustra gli scenari di ripristino seguenti:
- Errore di sintassi /etc/fstab non valido mancante disco
- Initrd danneggiato o riga initrd mancante in /boot/grub/grub.cfg
- L'ultimo kernel installato non è avviabile
- La console seriale e la seriale GRUB non sono configurate correttamente o sono mancanti
- Installazione o configurazione GRUB/EFI danneggiata
Azioni ALAR
Fstab
Questa azione rimuove tutte le righe nel file /etc/fstab che non sono necessarie per avviare un sistema. In primo luogo, viene creata una copia del file originale come riferimento. All'avvio del sistema operativo, l'amministratore può modificare fstab per correggere eventuali errori che non hanno consentito un riavvio del sistema in precedenza.
Per altre informazioni sui problemi relativi a un file /etc/fstab non valido, vedere Risolvere i problemi di avvio della macchina virtuale Linux perché errori fstab.
Kernel
Questa azione modifica il kernel predefinito. Lo script sostituisce il kernel danneggiato con la versione installata in precedenza.
Per altre informazioni sui messaggi che potrebbero essere registrati nella console seriale per gli eventi di avvio correlati al kernel, vedere Come ripristinare una macchina virtuale Linux di Azure da problemi di avvio correlati al kernel.
Initrd
Questa azione può essere usata per correggere un initrd o initramfs danneggiato o creato in modo non corretto.
Per ottenere la creazione corretta di initrd o initramfs, aggiungere i moduli hv_vmbus
, hv_netvsc
e hv_storvsc
all'immagine.
I problemi di avvio correlati a Initrd possono essere visualizzati come i sintomi registrati seguenti.
In entrambi i casi, le informazioni seguenti vengono registrate prima della registrazione delle voci di errore.
serialconsole
Questa azione corregge una configurazione della console seriale non corretta o non corretta per il kernel Linux o GRUB. È consigliabile eseguire questa azione nei casi seguenti:
- All'avvio della macchina virtuale non viene visualizzato alcun menu GRUB.
- Nella console seriale non vengono scritte informazioni correlate al sistema operativo.
grubfix
Questa azione può essere usata per reinstallare GRUB e rigenerare il file grub.cfg .
efifix
Questa azione può essere usata per reinstallare il software necessario per l'avvio da una macchina virtuale GEN2. Anche il file grub.cfg viene rigenerato.
controllato
Se la macchina virtuale viene arrestata immediatamente all'avvio a causa della configurazione del daemon di controllo, usare questa azione. Questa azione modifica la configurazione del daemon di controllo (nel file /etc/audit/auditd.conf ) modificando il HALT
valore configurato per i action
parametri in SYSLOG
, che non forza l'arresto del sistema. In un ambiente di Gestione volumi logici (LVM), se il volume logico che contiene i log di controllo è pieno e nel gruppo di volumi è disponibile spazio, anche il volume logico verrà esteso del 10% delle dimensioni correnti. Tuttavia, se non si usa un ambiente LVM o non è disponibile spazio, viene modificato solo il file di configurazione.
Come usare ALAR
Gli script ALAR utilizzano il comando Ripara estensione run
e la relativa opzione --run-id
. Il valore dell'opzione --run-id
per il ripristino automatico è linux-alar2
. Per correggere una macchina virtuale Linux usando uno script ALAR, seguire questa procedura:
Creare una macchina virtuale di salvataggio:
az vm repair create --verbose -g RG-NAME -n VM-NAME --repair-username RESCUE-UID --repair-password RESCUE-PASS --copy-disk-name DISK-COPY
Eseguire uno script con una delle azioni ALAR nella macchina virtuale di salvataggio:
az vm repair run --verbose -g RG-NAME -n VM-NAME --run-id linux-alar2 --parameters ACTION --run-on-repair
Scambiare i dischi del sistema operativo ed eliminare le risorse temporanee:
az vm repair restore --verbose -g RG-NAME -n VM-NAME
Nota
I dischi originali e nuovi non verranno eliminati.
Ecco le spiegazioni per i parametri nei comandi precedenti:
RG-NAME
: nome del gruppo di risorse contenente la macchina virtuale interrotta.VM-NAME
: nome della macchina virtuale interrotta.RESCUE-UID
: l'utente creato nella macchina virtuale di ripristino per l'accesso. È l'equivalente dell'utente creato in una nuova macchina virtuale nel portale di Azure.RESCUE-PASS
: la password perRESCUE-UID
, racchiusa tra virgolette singole. Ad esempio:'password!234'
.DISK-COPY
: nome della copia del disco del sistema operativo che verrà creata dalla macchina virtuale interrotta.ACTION
: attività con script da eseguire, adinitrd
esempio ofstab
.Nota
È possibile passare operazioni di ripristino singole o multiple. Per più operazioni, delinearle usando virgole senza spazi, ad
fstab,initrd
esempio .
Limitazione
Le macchine virtuali classiche non sono supportate.
Passaggi successivi
Se si verifica un bug o si vuole richiedere un miglioramento allo strumento ALAR, pubblicare un commento su GitHub.
È anche possibile trovare le informazioni più recenti sullo strumento ALAR in GitHub.
Contattaci per ricevere assistenza
In caso di domande o bisogno di assistenza, creare una richiesta di supporto tecnico oppure formula una domanda nel Supporto della community di Azure. È possibile anche inviare un feedback sul prodotto al feedback della community di Azure.
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per