Tecnologia

Linux prueba un sistema que permite recuperar el control tras un fallo sin reiniciar la PC

Kmorph para LinuxGenerado con IA
Kmorph para LinuxGenerado con IA.
Un desarrollador presentó Kmorph, una herramienta experimental que permite que un segundo kernel tome el control cuando el principal deja de responder. El sistema también abre la posibilidad de aplicar actualizaciones sin reiniciar el equipo y reducir las interrupciones en servidores e infraestructuras críticas.

Escuchá esta nota

EL DIARIO digital

minutos

La continuidad del servicio es uno de los principales desafíos en la administración de servidores y sistemas informáticos. Un bloqueo del núcleo de un sistema operativo puede dejar fuera de funcionamiento toda una máquina y obligar a reiniciarla, con la consiguiente interrupción de los servicios que dependen de ella.

Frente a ese problema, el desarrollador Cong Wang propone Kmorph, un proyecto experimental para Linux que utiliza las extensiones multikernel del sistema operativo. Su objetivo es permitir que un segundo núcleo, previamente cargado y en funcionamiento, asuma el control cuando el principal falla.

La iniciativa no solo busca evitar el reinicio completo de una computadora después de un bloqueo. También plantea una alternativa para actualizar el kernel (El kernel (o núcleo) es la parte fundamental del software de un sistema operativo. Funciona como el puente o intermediario entre el hardware de un equipo (el procesador, la memoria RAM, el disco duro, la tarjeta gráfica) y las aplicaciones o programas que usas) mediante una transición controlada entre dos versiones activas, sin necesidad de detener por completo el sistema.

Cómo funciona el sistema de respaldo

La propuesta se basa en la posibilidad de ejecutar varios kernels simultáneamente en una misma máquina, sin recurrir a un hipervisor. Cada uno dispone de sus propias CPU, memoria y dispositivos asignados.

Kmorph mantiene un segundo kernel preparado en segundo plano, con recursos reservados para intervenir ante una emergencia. Un programa denominado kmorphd supervisa el funcionamiento del núcleo principal mediante un canal de comunicación y detecta cuándo deja de responder.

Cuando ocurre un fallo, el kernel de respaldo inicia el procedimiento para tomar el control. Según las pruebas difundidas por Wang, el proceso desde la detección del problema hasta la intervención del núcleo sustituto demora aproximadamente un segundo.

En uno de los ensayos, un servidor web Nginx volvió a responder solicitudes alrededor de dos segundos después del bloqueo del kernel principal.

Para evitar conflictos, el sistema primero detiene las CPU que todavía ejecutan el núcleo averiado y comprueba que efectivamente hayan quedado inactivas. Recién entonces el kernel de respaldo toma posesión de los recursos de hardware.

A continuación, puede reiniciar dispositivos, recuperar la configuración de red y reincorporar las CPU y la memoria disponibles mediante mecanismos que permiten agregar recursos mientras el sistema está funcionando.

Otra característica es la posibilidad de generar volcados de memoria compatibles con kdump. De esta manera, conserva información del núcleo que falló, incluidos registros de CPU y datos necesarios para analizar las causas del problema, sin tener que iniciar otro sistema de captura ni reiniciar toda la máquina.

Actualizaciones sin reiniciar y desafíos pendientes

Kmorph también contempla la posibilidad de actualizar el kernel sin interrumpir completamente el funcionamiento del equipo. Mediante el comando kmorph upgrade, el sistema sincroniza los archivos, congela determinadas operaciones de escritura y transfiere el control a un segundo núcleo que puede ejecutar una versión más reciente.

El procedimiento busca que los servicios continúen funcionando durante la transición, con una interrupción mínima. Para conseguirlo, algunos programas pueden quedar preparados de antemano en el kernel de respaldo. La documentación del proyecto utiliza como ejemplo al servidor web Nginx.

Sin embargo, la herramienta todavía tiene limitaciones. Los servicios que permanecen en espera deben funcionar inicialmente sin acceso completo al almacenamiento y a la red, y no pueden generar información que necesite conservarse durante esa etapa. Además, algunas aplicaciones con configuraciones especiales de aislamiento deben reiniciarse después del cambio.

El desarrollo también se vincula con otras pruebas del ecosistema Linux, como la integración experimental presentada por Clement Verna para Fedora 45 y bootc. En ese caso, el propio desarrollador advirtió que la implementación todavía no está preparada para entornos de producción y que, por el momento, solo permite realizar una transición por cada arranque del sistema.

Por ahora, Kmorph sigue siendo un proyecto experimental. No obstante, su propuesta apunta a un problema central de las infraestructuras informáticas: reducir al mínimo el tiempo en que un servidor permanece fuera de servicio, incluso cuando se produce una falla grave en el núcleo del sistema operativo.

También te puede interesar...