UtgÄvan av det distribuerade replikerbara blocksystemet DRBD 9.2.0 har publicerats, vilket möjliggör skapandet av en RAID-1-liknande konfiguration som bestÄr av flera diskar frÄn olika maskiner kopplade över nÀtverket (nÀtverksmirroring). Systemet Àr utformat som en modul för Linux-kÀrnan och distribueras under GPLv2-licensen. DRBD-grenen 9.2.0 kan anvÀndas för en transparent ersÀttning av drbd 9.x.x och Àr helt kompatibel pÄ protokollnivÄ, konfigurationsfiler och verktyg.
DRBD möjliggör att sammanföra klustrets noder till en enhetlig felfri lagring. För applikationer och system ser detta lagringsutrymme ut som en enhetlig blockenhet för alla system. Vid anvÀndning av DRBD skickas alla operationer med den lokala disken till andra noder och synkroniseras med diskarna pÄ andra maskiner. Om en nod gÄr ner kommer lagringen automatiskt att fortsÀtta fungera tack vare de kvarvarande noderna. NÀr den felande nodens tillgÀnglighet ÄterstÀlls kommer dess tillstÄnd automatiskt att uppdateras till det aktuella lÀget.
Klustret som formar lagringssystemet kan bestÄ av flera dussin noder, placerade bÄde i det lokala nÀtverket och geografiskt spridda över olika datacenter. Synkronisering i sÄdana distribuerade lagringssystem utförs med hjÀlp av mesh-nÀtverkstekniker (data sprids kedjevis frÄn nod till nod). Replikation av noder kan utföras antingen i synkront lÀge eller i asynkront lÀge. Till exempel kan lokalt placerade noder anvÀnda synkron replikation, medan för fjÀrrliggande platser kan asynkron replikation tillÀmpas med ytterligare kompression och kryptering av trafiken.

I den nya utgÄvan:
- Fördröjningar för speglade skrivförfrÄgningar har minskat. Den tÀtare integrationen med nÀtverksstacken har möjliggjort en minskning av antalet kontextbyten av schemalÀggaren.
- Konkurrensen mellan applikationens I/O och resynkroniseringens I/O har minskat genom optimering av lÄs vid resynkronisering av extenter.
- Prestandan vid resynkronisering har avsevÀrt ökat pÄ backend-system dÀr dynamisk lagringsallokering ("thin provisioning") anvÀnds. PrestandaförbÀttringen har uppnÄtts genom att kombinera trim/discard-operationer, som tar lÀngre tid Àn vanliga skrivoperationer.
- Stöd för nÀtverksnamnrymder (network namespaces) har lagts till, vilket möjliggör integration med Kubernetes för att överföra nÀtverkstrafik för replikering genom ett separat nÀtverk kopplat till containrar, istÀllet för vÀrdens nÀtverksmiljö.
- Modulen transport_rdma har lagts till för att anvÀndas som transport mellan Infiniband/RoCE istÀllet för TCP/IP över Ethernet. AnvÀndningen av den nya transportmetoden minskar fördröjningar, minskar CPU-belastning och gör att data kan tas emot utan onödiga kopieringsoperationer (zero-copy).
KĂ€lla: opennet.ru
