GNU/Linux >> Tutoriales Linux >  >> Cent OS

CentOS/RHEL 7:comprensión de Kexec y Kdump

¿Qué es kdump y Kexec?

Kdump es el mecanismo de volcado de fallas del kernel de Linux. En el caso de un bloqueo del sistema, Kdump proporciona una imagen de volcado de memoria (vmcore). Esta imagen puede ayudar a determinar la causa del accidente. Se recomienda encarecidamente que habilite la función Kdump.

Kexec y Kdump juntos aseguran un arranque más rápido y la creación de núcleos virtuales de kernel confiables para fines de diagnóstico. Kexec es un mecanismo de inicio rápido que permite iniciar un kernel de Linux desde el contexto de un kernel que ya se está ejecutando sin pasar por el BIOS. Kdump usa Kexec para arrancar en un segundo kernel cada vez que el sistema falla. El volcado de memoria se captura desde el contexto de un núcleo recién iniciado y no desde el contexto del núcleo bloqueado. Este segundo núcleo arranca con muy poca memoria y captura la imagen de volcado.

Instalación y configuración de kdump

Para habilitar y usar Kdump, instale el siguiente paquete:

# yum install kexec-tools

Habilitar Kdump requiere que reserve una parte de la memoria del sistema para el kernel de captura. Esta parte de la memoria no está disponible para otros usos. La cantidad de memoria reservada para el kernel de Kdump está representada por el parámetro de arranque crashkernel. Esto se agrega a la línea del núcleo en el archivo de configuración de GRUB, /boot/grub2/grub.cfg . El siguiente ejemplo habilita Kdump y reserva 128 MB de memoria:

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

Además de reservar memoria, puede designar la dirección inicial (desplazamiento) de esta memoria reservada. Por ejemplo, agregar la siguiente opción a la línea del kernel reserva 128 MB de memoria, comenzando en la dirección física 0x01000000 (16 MB):

crashkernel=128M@16M

– Para establecer el desplazamiento en 48M:

crashkernel=128M@48M

– Si tiene más de 128 GB de RAM, use la siguiente configuración:

crashkernel=512M@64M

– Si se necesita más control sobre el tamaño y la ubicación de la memoria reservada, use el siguiente formato:

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

– El valor range[n] especifica un rango de valores que se comparan con la cantidad de RAM física presente en el sistema. El valor size[n] correspondiente especifica la cantidad de memoria Kexec que se debe reservar.

– El siguiente ejemplo le dice a Kexec que reserve 64 MB de RAM si el sistema contiene entre 512 MB y 2 GB de memoria. Si el sistema contiene más de 2 GB de memoria física, reserve 128 MB:

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

– En sistemas x86_64 con al menos 2 GB de memoria, puede asignar memoria para kdump automáticamente. Utilice el siguiente parámetro para asignar automáticamente memoria para kdump:

crashkernel=auto

Habilitar kdump

Después de agregar el parámetro crashkernel al archivo /boot/grub2/grub.cfg, reinicie su sistema para que la memoria esté reservada para el kernel de captura. El “libre –m El comando ” muestra correctamente que hay menos memoria disponible para el sistema.

Utilice el comando systemctl para permitir que el servicio Kdump se inicie en el momento del arranque. Use el comando systemctl para iniciar el servicio Kdump.

# systemctl enable kdump
# systemctl start kdump

Esto carga su imagen kernel-kdump a través de Kexec, dejando su sistema listo para capturar un vmcore en caso de bloqueo.

Generar volcado forzado

Puede probar la configuración de kdump forzando el bloqueo de su sistema con el siguiente comando:

# echo c > /proc/sysrq-trigger

Esto hace que se muestre una salida de pánico, seguido por el reinicio del sistema en el kernel de Kdump. Cuando el proceso de inicio llega al punto en que inicia el servicio Kdump, el vmcore se copia en el disco en la ubicación predeterminada, /var/crash/[YYYY-MM-DD-HH:MM]/vmcore. Luego, el sistema se reinicia de nuevo en el kernel normal.

Nota :Kdump no es compatible con invitados Xen domU. Los sistemas virtualizados pueden usar el comando xm dump-core para pánicos.CentOS / RHEL 7:Cómo configurar kdump
CentOS / RHEL 6:Cómo configurar kdump
CentOS / RHEL 5:Cómo configurar kdump
Comprensión del archivo de configuración de kdump /etc/kdump.conf


Cent OS
  1. Cómo instalar Python 3.5 en CentOS/RHEL y Fedora

  2. CentOS/RHEL 7:Configuración de un servidor NFS y un cliente NFS

  3. CentOS/RHEL 7:Cómo instalar y configurar telnet

  4. Cómo deshabilitar NUMA en CentOS / RHEL 6,7

  5. Cómo agregar y quitar memoria lógica en caliente en CentOS/RHEL 7

Instalar y configurar Puppet en CentOS 7 / RHEL 7

Cómo instalar y usar Firewalld en CentOS / RHEL

Cómo instalar Samba en RHEL y CentOS Stream

Instale Prometheus y Node Exporter en CentOS / RHEL 8

Cómo instalar y configurar Jenkins en CentOS 8 / RHEL 8

Cómo instalar Wine 5.0 en CentOS, RHEL y Fedora