Heartbeat v2 Einträge in CIB entfernen

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.

Beispielsweise aufgrund von Konfigurationsfehlern des Clustermanagers Heartbeat v2 kann es dazu kommen, dass in der CIB (Cluster Information Base)[1] Einträge vorhanden sind, die das Starten einer Ressource verhindern. Dieser Artikel zeigt Möglichkeiten wie man der Ursache auf die Spur kommen und das Problem beheben kann.

Hinweis: die beschriebenen Schritte sollen beispielhaft Möglichkeiten zur Fehleranalyse aufzeigen. Führen Sie Änderungen der CIB nicht voreilig durch. Ein schrittweises und überlegtes Vorgehen erleichtert die Fehleranalyse. Darüber hinaus sinkt die Gefahr zusätzliche Fehler einzubauen.

Versionen

  • Betriebssystem: SLES10 SP2
  • Heartbeat Version: 2.1.3-0.9 (von SLES10 SP2)

Beispiel eines Problems

Eine Ressource lässt sich nicht starten. Eine Statusabfrage mittels crm_verify -L -V liefert auszugsweise:

test-node2:~ # crm_verify -L -V
crm_verify[5178]: 2008/12/16_10:20:12 WARN: native_color: Resource res_lvm_xenvg02 cannot run anywhere
[...]
Warnings found during check: config may not be valid
test-node2:~ #

Optional kann auch crm_verify -L -VVV für die Abfrage genutzt werden - dadurch werden noch mehr Informationen angezeigt.

Analyse und Problemlösung

Die vollständige CIB kann mittels cibadmin -Q abgefragt werden. Mittels -o Option kann die Abfrage auf bestimmte Objekttypen (nodes, resources, constraints, crm_config, status) limitiert werden. Details dazu liefert die Ausführung von cibadmin ohne Parameter.

Am besten durchsucht man die CIB nach dem Ressource-Namen und nach dem Begriff target. Im Beispiel hier liefert dies folgendes Ergebnis:

test-node2:~ # cibadmin -Q | grep res_lvm_xenvg02 | grep target
               <nvpair id="res_lvm_xenvg02-meta-options-target_role" name="target_role" value="stopped"/>
test-node2:~ #

Im Beispiel ist die betroffene Ressource Teil einer Ressource-Group und soll keine eigene target_role haben. Diese wird daher entfernt:

test-node2:~ # cibadmin -D -o resources -X '<nvpair id="res_lvm_xenvg02-meta-options-target_role" name="target_role" value="stopped"/>'
test-node2:~ #

Danach wird die Ressource automatisch von Heartbeat v2 gestartet.

Referenzen


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

ARP Problem
BUG unable to handle kernel NULL pointer dereference at 0000000000000304 beheben
CPU Cache Topologie mit likwid anzeigen