De release van het gedistribueerde replicabele blokapparaat DRBD 9.2.0 is gepubliceerd. Dit stelt in staat om een soort RAID-1 array te creƫren, samengesteld uit net verbonden schijven van verschillende machines (netwerkspiegeling). Het systeem is gerealiseerd als een module voor de Linux-kernel en wordt verspreid onder de GPLv2-licentie. De drbd 9.2.0 tak kan worden gebruikt voor een transparante vervanging van drbd 9.x.x en is volledig compatibel op protocolniveau, met configuratiebestanden en hulpprogramma's.
DRBD biedt de mogelijkheid om de schijven van clusternodes samen te voegen tot een enkele, fouttolerante opslag. Voor toepassingen en systemen lijkt deze opslag als ƩƩn en hetzelfde blokapparaat voor alle systemen. Bij gebruik van DRBD worden alle bewerkingen met de lokale schijf naar andere nodes verzonden en gesynchroniseerd met de schijven van andere machines. In het geval van een uitval van ƩƩn node, blijft de opslag automatisch functioneren dankzij de overgebleven nodes. Wanneer de defecte node weer beschikbaar komt, wordt zijn status automatisch bijgewerkt naar de actuele staat.
De cluster die de opslag vormt, kan uit tientallen knooppunten bestaan, die zowel in het lokale netwerk als geografisch verspreid over verschillende locaties zijn geplaatst. datacenters. Synchronisatie in dergelijke gedistribueerde opslag-systemen gebeurt met behulp van mesh-netwerktechnologieƫn (data verspreiden zich in een keten van knooppunt naar knooppunt). Replicatie van knooppunten kan zowel in synchrone als asynchrone modus plaatsvinden. Bijvoorbeeld, lokaal geplaatste knooppunten kunnen synchrone replicatie toepassen, terwijl asynchrone replicatie met extra compressie en encryptie van verkeer kan worden gebruikt voor knooppunten die op afstand zijn geplaatst.

In de nieuwe release:
- Vertraagde de wachttijden voor gespiegeld schrijfverzoeken. Een nauwere integratie met de netwerklagen heeft het aantal contextwisselingen van de scheduler verminderd.
- De concurrentie tussen de invoer/uitvoer van applicaties en de invoer/uitvoer van resynchronisatie is verminderd dankzij de optimalisatie van de vergrendelingen tijdens de resynchronisatie van extents.
- De prestaties van resynchronisatie zijn aanzienlijk verbeterd op backends waar dynamische opslagallocatie ('thin provisioning') wordt toegepast. De prestaties zijn verhoogd door de combinatie van trim/discard-operaties, die aanzienlijk langer duren dan normale schrijfbewerkingen.
- Ondersteuning voor netwerkspecifieke namespaces is toegevoegd, wat de integratie met Kubernetes mogelijk maakte voor het doorgeven van netwerkt verkeer van replicaties via een aparte aan containers gekoppelde netwerk, in plaats van de hostomgeving.
- Een transportmodule transport_rdma is toegevoegd voor gebruik als Infiniband/RoCE transport in plaats van TCP/IP over Ethernet. Het gebruik van het nieuwe transport verlaagt de latentie, vermindert de CPU-belasting en zorgt voor gegevensoverdracht zonder onnodige kopieerbewerkingen (zero-copy).
Bron: opennet.ru
