Para obtener un volcado más detallado (core dump) de una máquina virtual Xen o KVM utilizando virsh, sigue estos pasos:
Habilitar Crashkernel en GRUB (para CentOS/RHEL):
Para CentOS o Red Hat Enterprise Linux (RHEL), necesitarás habilitar el kernel de volcado. Edita el archivo /etc/default/grub
y agrega el parámetro crashkernel
. Por ejemplo:
GRUB_CMDLINE_LINUX="rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet crashkernel=auto"
Luego, actualiza GRUB:
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
Reinicia el sistema para que los cambios tengan efecto.
Verificar el Kernel y Kexec-tools:
Asegúrate de que tengas instalados kexec-tools
y un paquete adecuado de kernel-debug
en tu sistema.
sudo yum install kexec-tools kernel-debug
Verifica que el servicio kexec esté habilitado y en ejecución:
sudo systemctl enable kexec-reboot
sudo systemctl start kexec-reboot
Provocar un Crash en la Máquina Virtual:
Simula un crash del kernel dentro de la máquina virtual. Puedes hacerlo ejecutando el siguiente comando dentro de la máquina virtual:
echo c > /proc/sysrq-trigger
Monitorear el Evento de Crash:
En el hipervisor, monitorea el evento de crash usando dmesg
:
dmesg | grep "crash"
Deberías ver mensajes indicando un evento de crash.
Capturar más con virsh:
Usa virsh para capturar el volcado:
sudo virsh dump <nombre_del_dominio> /ruta/donde/guardar/vmcore
Reemplaza <nombre_del_dominio>
con el nombre de tu máquina virtual.
Analizar el volcado:
Puedes usar herramientas como crash
o gdb
para analizar el archivo vmcore
. Instala crash
si aún no lo tienes:
sudo yum install crash
Luego usa crash
con el archivo vmcore
:
sudo crash /ruta/donde/guardar/vmcore /usr/lib/debug/lib/modules/$(uname -r)/vmlinux
Usa el comando bt
en crash
para obtener un backtrace y analizar el crash.
Nota:
Obtener un vmcore
y analizarlo requiere experiencia en depuración de problemas relacionados con el kernel. Asegúrate de hacer una copia de seguridad de los datos y configuraciones importantes antes de intentar cualquiera de estos pasos, ya que provocar un crash en un sistema y capturar un vmcore
puede llevar a la pérdida de datos o inestabilidad del sistema. Si no estás seguro, considera buscar asistencia de administradores de sistemas experimentados o canales de soporte.