2017-12-04 10 views
0

Ich habe einen Test 2-Knoten-HA-Cluster für eine Anwendung eingerichtet, die Daten auf lokale Festplatte schreibt. DRBD wurde eingerichtet, um die Daten auf den zweiten Knoten zu synchronisieren. Meine Anwendung hat eine Abhängigkeit vom Hostnamen zum Starten/Stoppen und führt eine Aufgabe aus. Um es hochverfügbar zu haben, habe ich Cluster IP eingerichtet und meinen Knoten vorübergehend von seinem tatsächlichen Namen in den Namen der virtuellen IP-Adresse umbenannt.DRBD mit temprorary Hostname ändern

All dies funktioniert gut mit manuell DRBD-Ressource auf primäre zu promoten und es auf jedem Knoten, wo die virtuelle IP ist zu jedem Zeitpunkt festgelegt.

Sobald ich versuche, die DRBD-Ressource im Schrittmacher hinzuzufügen und dann meine Anwendung mit dem temporären Namen zu starten (Änderung des Hostnamens mit dem Befehl hostname, Beispiel: - nodeA: ~ # hostname test-ip), schlägt der HA-Cluster fehl DRBD und umounts vom Server früher zum primären befördert. Daher kann meine Anwendung nicht vollständig vom Cluster verwaltet werden.

Gibt es in jedem Fall DRBD kann mit dem Hostnamen der virtuellen IP (Umbenennen eines Hosts) in einem 2-Knoten-Cluster arbeiten?

Antwort

1

Sie können DRBD so konfigurieren, dass eine IP-Adresse anstelle eines Hostnamens über die "floating peers" feature zugeordnet wird. Zum Beispiel:

resource r0 { 
    device /dev/drbd0; 
    protocol C; 

    floating 192.168.40.125:7789 { 
     disk /dev/sdb; 
     meta-disk internal; 
    } 

    floating 192.168.40.126:7789 { 
     disk /dev/sdb; 
     meta-disk internal; 
    }   
} 

Dies wurde für die Verwendung mehrerer DRBD Host an den gleichen gemeinsamen Speicher angeschlossen entworfen, aber es sollte für Ihren Anwendungsfall und lokale Speicher immer noch funktionieren.

+0

Ich sehe ein Problem bei der Verwendung dieses. Wenn der primäre DRBD-Host umbenannt wird, erscheinen diese Einträge in/var/log/messages alle 30 Sekunden: Dec 7 21:53:02 nodeB drbd (drbd-app) [17428]: FEHLER: r0: Called/usr/sbin/crm_master -Q -l Neustart -v 10000 Dez 7 21:53:02 nodeB drbd (drbd-app) [17428]: Fehler: r0: Exit Code 1 Dec 7 21:53:02 nodeB drbd (drbd-app) [17428]: FEHLER: r0: Befehlsausgabe: Dez 7 21:53:02 nodeB lrmd [3165]: notice: operation_finished: drbd-app_monitor_29000: 17428: stderr [Konnte Name = Tempname nicht zu einer UUID zuordnen ] – gagan4005