Saltar al contenido

DRBD 9 se acerca al Linux principal con 7 parches de preparación

LINBIT publicó el 23 de septiembre 7 parches que remodelan el código DRBD 8.4 del kernel hacia DRBD 9, que admite hasta 31 pares por volumen.

Por Tech AI Wire Team

3 min de lectura

XLinkedIn
A long aisle of white server racks with perforated doors in a data center, under yellow cable trays and strip lights.
Foto: PiDatacenters

En cifras

patches in the preparation series
7
peers per volume in DRBD 9
31
new maximum resync rate
8 GiB/s

Christoph Böhmwalder envió una serie de 7 parches a las listas de correo del kernel de Linux el 23 de septiembre de 2026. Se titula "drbd: preparation for DRBD 9". La serie remodela el antiguo código DRBD del kernel para que el mucho más reciente DRBD 9 pueda seguirlo a la rama principal. Esto importa a cualquiera que ejecute almacenamiento replicado en Linux, porque la versión incluida en el kernel sigue en la antigua rama 8.4.

DRBD significa Distributed Replicated Block Device. Copia un disco, bloque a bloque, a una o más máquinas a través de la red. Si un servidor cae, otro conserva una copia idéntica de los datos. LINBIT, la empresa detrás del proyecto, dice que este se ha mantenido durante más de dos décadas.

Qué cambian los 7 parches

La carta de presentación describe el enfoque en una línea. "Cada parche lleva una parte del código DRBD 8.4 dentro del árbol a la forma que tiene en el código DRBD 9 fuera del árbol", escribió Böhmwalder.

"Dentro del árbol" (in-tree) se refiere al código que vive en el código fuente oficial del kernel. "Fuera del árbol" (out-of-tree) se refiere al código que se mantiene por separado y se compila como módulo adicional. DRBD 9 siempre ha estado fuera del árbol.

La carta de presentación enumera estos cambios:

  • Límites más altos para redes rápidas: búferes de socket de hasta 128 MiB y una tasa máxima de resincronización de 8 GiB/s.
  • El archivo drbd_worker.c pasa a llamarse drbd_sender.c, en línea con la estructura de DRBD 9.
  • Se sustituyen los campos de bits de la estructura de datos drbd_interval.
  • La tabla de nombres de paquetes de red se traslada a una nueva ubicación.
  • Los mensajes de registro obtienen limitación de frecuencia por objeto, para que un solo dispositivo averiado no pueda inundar el registro del kernel.

La serie se envió a las listas linux-kernel y linux-block. La carta de presentación subraya que nada cambia para los usuarios actuales: "Los valores predeterminados no cambian, todas las configuraciones existentes siguen siendo válidas."

Por qué DRBD 9 merece el esfuerzo

LINBIT explicó el objetivo en una entrada de blog de Michael Troutman del 27 de abril de 2026. El kernel incluye DRBD 8.4.11, que la entrada califica de estancado. El desarrollo activo se hace en DRBD 9.3, fuera del kernel.

La distancia entre ambos es grande.

CapacidadDRBD 8.4 (en el kernel)DRBD 9 (fuera del árbol)
Nodos por volumen2, para conmutación por errorHasta 31 pares
Protección contra split-brainDepende del fencingQuórum integrado para 3 o más nodos
Gestión de nodos caídosConfiguración manual de STONITH o fencingAutomática

El split-brain es el fallo en el que dos máquinas creen tener la copia activa y empiezan a escribir datos distintos. El quórum lo evita al permitir que un nodo escriba solo mientras vea a la mayoría del clúster. STONITH, abreviatura de "shoot the other node in the head" (dispárale en la cabeza al otro nodo), es la solución más antigua: apagar un nodo sospechoso antes de que cause daños. DRBD 9 también añade salvaguardas para sincronizar un nodo que vuelve a unirse al clúster.

La entrada de LINBIT señalaba Linux 7.2 como objetivo para los parches de DRBD 9.3. La serie de esta semana se describe como preparación, así que el código completo de DRBD 9 será un envío posterior y separado.

Qué significa para los desarrolladores

Si hoy usa DRBD, compruebe cuál de los dos tiene. Puede que ya cargue el módulo DRBD 9 fuera del árbol de LINBIT en lugar del controlador 8.4 del kernel. cat /proc/drbd muestra la versión cargada. Esta serie todavía no cambia nada para ninguno de los dos grupos, y la carta de presentación promete que las configuraciones existentes siguen siendo válidas.

Si depende del controlador 8.4 del kernel, el trabajo en upstream es un motivo para planificar ya una prueba de DRBD 9. Cuando se integre, el controlador del kernel ganará volúmenes con varios pares y quórum. Eso cambia cómo hay que configurar un clúster y aplicarle fencing. Probarlos primero en un clúster de preproducción es mejor que descubrir las diferencias tras una actualización del kernel de la distribución.

Si construye almacenamiento sobre redes rápidas, tome nota de los nuevos límites. Un techo de resincronización de 8 GiB/s y búferes de socket de 128 MiB dejan margen para enlaces rápidos de centros de datos. El sitio de LINBIT señala que DRBD puede replicar sobre TCP/IP o RDMA, el transporte de baja latencia que se usa en redes InfiniBand y RoCE. Los valores predeterminados siguen igual, así que todavía tiene que subirlos usted mismo.

Siga la lista linux-block para la próxima ronda. Los comentarios de revisión sobre estos 7 parches mostrarán la rapidez con que los mantenedores aceptan un controlador grande que lleva mucho tiempo fuera del árbol. Esa respuesta decide cuándo un kernel estándar podrá sustituir a un módulo DRBD empaquetado por separado.

Fuentes

  1. [PATCH 0/7] drbd: preparation for DRBD 9 - linux-kernel mailing list
  2. Working to Put DRBD 9 in the Mainline Linux Kernel - LINBIT
  3. DRBD - LINBIT

Artículos relacionados

A process listing on a Kubernetes v1.37 node, showing containerd, kubelet and kube-proxy owned by the kube user while the systemd services still run as root.
Herramientas dev

Kubernetes 1.37 pasa el modo rootless a beta

Kubernetes 1.37 pasa KubeletInUserNamespace a beta. El kubelet, los runtimes de contenedores, los plugins CNI y kube-proxy ya pueden ejecutarse como usuario corriente.