Osegi
Software·2 min de lectura

kmorph: herramienta abierta recupera Linux tras un fallo del kernel

El equipo de Multikernel presenta kmorph, un proyecto abierto que activa un kernel Linux de reserva tras un fallo o una actualización, sin reinicio completo.

Server rack with a terminal showing a Linux kernel switching to a standby kernel after a crash.
Imagen: Хабр

El equipo de Multikernel ha presentado kmorph, un proyecto de código abierto que restablece rápidamente un sistema Linux tras un fallo del kernel y que también permite sustituir el kernel en ejecución sin un reinicio completo. Lo desarrolla Cong Wang, responsable del subsistema de control de tráfico (TC) del kernel de Linux.

En las pruebas de los desarrolladores, un servidor con nginx reanudó el servicio unos dos segundos después de un fallo del kernel. El equipo pretende lograr en el futuro un cambio instantáneo e imperceptible para los clientes conectados.

Cómo funciona

Hoy, un fallo del kernel puede dejar un PC o un servidor parado varios minutos por la inicialización del hardware, la carga del entorno del sistema y el guardado del volcado de memoria mediante kdump. Con kdump el sistema arranca en la práctica dos veces: primero kexec carga un kernel aparte para guardar el volcado y después arranca el kernel de trabajo con los servicios.

kmorph carga de antemano en memoria un kernel Linux de reserva y un entorno mínimo, asociados a un núcleo de procesador dedicado, que vigilan el kernel principal. Si este se bloquea o entra en pánico, el entorno de reserva toma el control, guarda el volcado de memoria del kernel averiado y asume los núcleos de procesador, la memoria, los dispositivos, la configuración de red y el sistema de archivos.

La conmutación la coordinan dos herramientas: kmorph, que se ejecuta en el entorno activo, prepara el de reserva y sincroniza el estado de la red; y kmorphd, que corre en el entorno de reserva y supervisa el activo. Servicios como nginx pueden permanecer en espera y atender peticiones nada más producirse el cambio.

Actualizaciones y compatibilidad

El mismo mecanismo sirve para actualizar el kernel sin el reinicio tradicional. Linux ya incluye Kexec HandOver (KHO) y Live Update Orchestrator (LUO), que lanzan un kernel nuevo desde el antiguo sin perder el estado. Sin embargo, no sirven tras un fallo, porque necesitan conservar el estado de un kernel que funcione, y son más lentos al requerir un reinicio con kexec.

kmorph admite x86_64 y ARM64, y trabaja en el soporte de RISC-V. Su integración en distribuciones sigue el modelo de kdump, con dracut, initramfs-tools, kernel-install y systemd.

Apps que merecen la pena

SUMO: el puzle de números

Toca las casillas correctas, suma y alcanza el objetivo. Fácil de aprender, difícil de dominar. Gratis, para todas las edades.

Etiquetas:linuxkmorphmultikernelkernelkdumpopen source

Más de este día

Ver todas →

Más en: Software

Ver todas →