DRBD Statusinformationen im Detail

Aus Thomas-Krenn-Wiki
Zur Navigation springen Zur Suche springen
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 arbeitet im Product Management Team von Thomas-Krenn. Er evaluiert dabei neueste Technologien und teilt sein Wissen in Fachartikeln, bei Konferenzen und im Thomas-Krenn Wiki. Bereits 2005 - ein Jahr nach seinem Abschluss des Studiums zu Computer- und Mediensicherheit an der FH Hagenberg - heuerte er beim bayerischen Server-Hersteller an. Als Öffi-Fan nutzt er gerne Bus & Bahn und genießt seinen morgendlichen Spaziergang ins Büro.


Das könnte Sie auch interessieren

1 HE Supermicro SMCI-5015 Cluster
Dokumentation Thomas Krenn HA Linux Cluster
Live Switchover