GNU/Linux >> Linux Esercitazione >  >> Cent OS

CentOS / RHEL 7:Comprensione di Kexec e Kdump

Cos'è kdump e Kexec

Kdump è il meccanismo di crash dump del kernel Linux. In caso di arresto anomalo del sistema, Kdump fornisce un'immagine di dump della memoria (vmcore). Questa immagine può aiutare a determinare la causa dell'incidente. Si consiglia vivamente di abilitare la funzione Kdump.

Kexec e Kdump insieme garantiscono un avvio più rapido e la creazione di vmcore del kernel affidabili per scopi diagnostici. Kexec è un meccanismo di avvio rapido che consente di avviare un kernel Linux dal contesto di un kernel già in esecuzione senza passare dal BIOS. Kdump usa Kexec per avviare un secondo kernel ogni volta che il sistema va in crash. Il dump di arresto anomalo viene catturato dal contesto di un kernel appena avviato e non dal contesto del kernel danneggiato. Questo secondo kernel si avvia con pochissima memoria e cattura l'immagine di dump.

Installazione e configurazione di kdump

Per abilitare e utilizzare Kdump, installa il seguente pacchetto:

# yum install kexec-tools

L'abilitazione di Kdump richiede di riservare una parte della memoria di sistema per il kernel di acquisizione. Questa porzione di memoria non è disponibile per altri usi. La quantità di memoria riservata al kernel di Kdump è rappresentata dal parametro di avvio del crashkernel. Questo viene aggiunto alla riga del kernel nel file di configurazione di GRUB, /boot/grub2/grub.cfg . L'esempio seguente abilita Kdump e riserva 128 MB di memoria:

linux16 /vmlinuz-3.10.0-514.el7.x86_64 root=/dev/mapper/cl-root ro crashkernel=128M

Oltre a riservare memoria, è possibile designare l'indirizzo iniziale (offset) di questa memoria riservata. Ad esempio, l'aggiunta della seguente opzione alla riga del kernel riserva 128 MB di memoria, a partire dall'indirizzo fisico 0x01000000 (16 MB):

crashkernel=128M@16M

– Per impostare l'offset su 48M:

crashkernel=128M@48M

– Se si dispone di più di 128 GB di RAM, utilizzare la seguente impostazione:

crashkernel=512M@64M

– Se è necessario un maggiore controllo sulle dimensioni e sul posizionamento della memoria riservata, utilizzare il seguente formato:

crashkernel=range1:size1[,range2:size2,...][@offset]

– Il valore range[n] specifica un intervallo di valori che vengono confrontati con la quantità di RAM fisica presente nel sistema. Il valore size[n] corrispondente specifica la quantità di memoria Kexec da riservare.

– L'esempio seguente indica a Kexec di riservare 64 MB di RAM se il sistema contiene tra 512 MB e 2 GB di memoria. Se il sistema contiene più di 2 GB di memoria fisica, riserva 128 MB:

crashkernel=512M-2G:64M,2G-:128M

– Sui sistemi x86_64 con almeno 2 GB di memoria, puoi allocare memoria per kdump automaticamente. Usa il seguente parametro per allocare automaticamente la memoria per kdump:

crashkernel=auto

Abilitazione di kdump

Dopo aver aggiunto il parametro crashkernel al file /boot/grub2/grub.cfg, riavviare il sistema in modo che la memoria sia riservata per il kernel di acquisizione. Il "libero –m Il comando ” mostra correttamente che è disponibile meno memoria per il sistema.

Usa il comando systemctl per abilitare l'avvio del servizio Kdump all'avvio. Usa il comando systemctl per avviare il servizio Kdump.

# systemctl enable kdump
# systemctl start kdump

Questo carica la tua immagine kernel-kdump tramite Kexec, lasciando il tuo sistema pronto per acquisire un vmcore in caso di arresto anomalo.

Genera dump di arresto anomalo forzato

Puoi testare la configurazione di kdump forzando il crash del tuo sistema usando il seguente comando:

# echo c > /proc/sysrq-trigger

Questo fa sì che venga visualizzato l'output di panico, seguito dal riavvio del sistema nel kernel di Kdump. Quando il processo di avvio arriva al punto in cui avvia il servizio Kdump, vmcore viene copiato su disco nella posizione predefinita, /var/crash/[AAAA-MM-GG-HH:MM]/vmcore. Il sistema si riavvia quindi nel kernel normale.

Nota :Kdump non è supportato sui guest Xen domU. I sistemi virtualizzati possono utilizzare il comando xm dump-core per panics.CentOS / RHEL 7 :Come configurare kdump
CentOS / RHEL 6 :Come configurare kdump
CentOS / RHEL 5 :Come configurare kdump
Capire il file di configurazione di kdump /etc/kdump.conf


Cent OS
  1. CentOS / RHEL 7:configurazione di un server NFS e un client NFS

  2. CentOS / RHEL 7 :Come installare e configurare telnet

  3. Come disabilitare NUMA in CentOS / RHEL 6,7

  4. Come installare e configurare Samba in CentOS/RHEL

  5. CentOS / RHEL 7:Comprensione di Kexec e Kdump

Installa e configura Puppet su CentOS 7 / RHEL 7

Come installare e utilizzare Firewalld in CentOS/RHEL

Come installare Samba su RHEL e CentOS Stream

Installa Prometheus e Node Exporter su CentOS / RHEL 8

Come installare e configurare Jenkins su CentOS 8 / RHEL 8

Come installare Wine 5.0 su CentOS, RHEL e Fedora