DRBD Statusinformationen im Detail

Aus Thomas-Krenn-Wiki
Wechseln zu: Navigation, Suche
Hinweis: Bitte beachten Sie, dass dieser Artikel / diese Kategorie sich entweder auf ältere Software/Hardware Komponenten bezieht oder aus sonstigen Gründen nicht mehr gewartet wird.
Diese Seite wird nicht mehr aktualisiert und ist rein zu Referenzzwecken noch hier im Archiv abrufbar.

DRBD bietet zahlreiche Statusinformationen, von denen auch viele hauptsächlich nur DRBD-intern relevant sind. Hier sind einige dieser Informationen erläutert.

DRBD 8

DRBD 8 kommt beim 2 HE Intel SR2500 Cluster zum Einsatz. DRBD 8 bietet u.a. die im folgenden erläuterten Informationen.

Generation Identifiers

DRBD verwendet die Generation Identifiers (GI's) um unterschiedliche Generationen von replizierten Daten zu identifizieren[1]. Diese Informationen nutzt DRBD intern, um

  • zu erkennen, ob die beiden Knoten zu einem Cluster gehören,
  • die Richtung einer Hintergrund-Resynchronisation zu ermitteln,
  • zu erkennen, ob ein Full-Sync notwendig ist, oder eine teilweise Resynchronisation der Daten ausreicht,
  • eine Split-Brain Situation zu erkennen.

Für die GIs nutzt DRBD UUIDs mit 16 HEX Zeichen.

Beispiel von Generation Identifiers

Das Beispiel zeigt einen Cluster, mit test-node1 als Primary und test-node2 als Secondary:

[root@test-node1 ~]# drbdadm show-gi all

       +--<  Current data generation UUID  >-
       |               +--<  Bitmap's base data generation UUID  >-
       |               |                 +--<  younger history UUID  >-
       |               |                 |         +-<  older history  >-
       V               V                 V         V
EAFBE974BBDFFC0B:0000000000000000:33472C1CA1B88B31:82278FA8214E654B:1:1:1:1:0:0
                                                                    ^ ^ ^ ^ ^ ^
                                      -<  Data consistancy flag  >--+ | | | | |
                             -<  Data was/is currently up-to-date  >--+ | | | |
                                  -<  Node was/is currently primary  >--+ | | |
                                  -<  Node was/is currently connected  >--+ | |
         -<  Node was in the progress of setting all bits in the bitmap  >--+ |
                        -<  The peer's disk was out-dated or inconsistent  >--+

[root@test-node1 ~]# 
[root@test-node2 ~]# drbdadm show-gi all

       +--<  Current data generation UUID  >-
       |               +--<  Bitmap's base data generation UUID  >-
       |               |                 +--<  younger history UUID  >-
       |               |                 |         +-<  older history  >-
       V               V                 V         V
EAFBE974BBDFFC0A:0000000000000000:33472C1CA1B88B30:82278FA8214E654B:1:1:0:1:0:0
                                                                    ^ ^ ^ ^ ^ ^
                                      -<  Data consistancy flag  >--+ | | | | |
                             -<  Data was/is currently up-to-date  >--+ | | | |
                                  -<  Node was/is currently primary  >--+ | | |
                                  -<  Node was/is currently connected  >--+ | |
         -<  Node was in the progress of setting all bits in the bitmap  >--+ |
                        -<  The peer's disk was out-dated or inconsistent  >--+

[root@test-node2 ~]# 

Genaue Hintergrundinformationen zu den Bedeutungen sind im DRBD User's Guide verfügbar[1]. Interessant an dieser Stelle ist vor allem die Current data generation UUID. Diese ist auf test-node1 0xEAFBE974BBDFFC0B und auf test-node2 0xEAFBE974BBDFFC0A. Das letzte Bit dieser UUID besagt, ob der letzte Zustand Primary oder Secondary war - daher der Unterschied im letzten HEX Zeichen zwischen test-node1 ("B") und test-node2 ("A").

Die Bedeutungen der möglichen Übereinstimmungen der unterschiedlichen GIs sind ebenfalls im DRBD User's Guide dokumentiert[2].

Referenzen

  1. 1,0 1,1 Generation Identifiers, The DRBD User's Guide
  2. How DRBD uses generation identifiers, The DRBD User's Guide


Foto Werner Fischer.jpg

Autor: Werner Fischer

Werner Fischer, tätig im Bereich Communications / Knowledge Transfer bei Thomas-Krenn, hat sein Studium zu Computer- und Mediensicherheit an der FH Hagenberg abgeschlossen. Er ist regelmäßig Autor in Fachzeitschriften und Speaker bei Konferenzen wie LinuxCon, OSDC, OSMC, LinuxTag u.v.m. Seine Freizeit gestaltet er sehr abwechslungsreich. In einem Moment absolviert er seinen Abschluss im Klavierspielen, im anderen läuft er beim Linzmarathon in der Staffel mit oder interessiert sich für OpenStreetMap.


Das könnte Sie auch interessieren

1 HE Supermicro SMCI-5015 Cluster
Live Switchover
Zeitsprünge Linux NTP