Para el núcleo Linux Se ha propuesto un conjunto de parches para implementar el dispositivo de bloques replicados distribuidos DRBD 9, que permite crear una matriz RAID-1 formada por unidades duplicadas en red conectadas a diferentes sistemas. El controlador se probará inicialmente en la rama linux-next y se finalizará para su integración en el kernel. Linux 7.2.
La antigua implementación de DRBD se incluyó en el kernel desde la versión 2.6.33, publicada hace 16 años. El código del kernel se basa en la rama DRBD 8, que difiere significativamente de la rama DRBD 9, publicada en 2015, y es incompatible a nivel de protocolo. Como resultado, DRBD 9 se desarrolló como un módulo externo independiente, desincronizado con el módulo principal del kernel. La implementación de DRBD del kernel se mantuvo por separado y tiene un desfase de entre 10 y 15 años con respecto al código base actual de DRBD. Los parches propuestos están diseñados para solucionar este problema.
DRBD permite combinar las unidades de los nodos del clúster en un único almacenamiento tolerante a fallos. Para las aplicaciones y el sistema, dicho almacenamiento parece un dispositivo de bloque que es el mismo para todos los sistemas. Cuando se utiliza DRBD, todas las operaciones del disco local se envían a otros nodos y se sincronizan con los discos de otras máquinas. Si un nodo falla, el almacenamiento continuará funcionando automáticamente utilizando los nodos restantes. Cuando se restablezca la disponibilidad del nodo fallido, su estado se actualizará automáticamente.
El clúster que conforma el almacenamiento puede incluir hasta 32 nodos ubicados tanto en la red local como en ubicaciones geográficamente dispersas. centros de datosLa sincronización en estos sistemas de almacenamiento distribuido se realiza en una red de malla, donde los datos fluyen de nodo a nodo. La replicación de nodos puede realizarse de forma síncrona o asíncrona. Por ejemplo, los nodos alojados localmente pueden usar la replicación síncrona, mientras que los nodos en ubicaciones remotas pueden usar la replicación asíncrona con compresión y cifrado de tráfico adicionales.
La rama DRBD 9 se distingue por la abstracción de la capa de transporte, lo que hizo posible implementar canales de comunicación no solo sobre TCP/IPpero también usando RDMA/Infiniband. En comparación con la ejecución sobre una red IP tradicional, la integración del acceso directo a la RAM de otra computadora mediante RDMA (Acceso Directo a Memoria Remota) duplicó el rendimiento de replicación y redujo la carga de la CPU en un 50 %. El tamaño máximo del almacenamiento sincronizado se aumentó a 32 nodos. DRBD 9 también presenta una lógica de resincronización de nodos modificada, un mecanismo de bloqueo rediseñado, soporte adicional para espacios de nombres de red, ajuste automático del estado del nodo en función de la actividad y soporte para confirmaciones en dos fases y propagación de actualizaciones sin bloqueo. 
Fuente: opennet.ru
