Schrittmacher-DRBD-Ressource wird auf keinem Knoten zum Master befördert

7

Zunächst einmal bin ich kein Linux-Spezialist. Ich habe Tutorials verfolgt und mit Hilfe von Google gearbeitet. Bis jetzt hat das gut geklappt, aber derzeit habe ich ein Problem.
Ich verwende CentOS 6.5 und DRBD Version 8.4.4.

Ich habe zwei Knoten, auf denen der Schrittmacher ausgeführt wird. Bisher hat alles funktioniert. Ich habe DRBD eingerichtet und kann einen Knoten manuell als primär festlegen und die DRBD-Ressource bereitstellen, sodass dies auch funktioniert.

Jetzt habe ich eine Schrittmacher-Ressource zur Steuerung von DRBD erstellt, die jedoch keinen der beiden Knoten zum Master befördert, wodurch auch verhindert wird, dass sie gemountet wird.

Der PC-Status sieht folgendermaßen aus:

Cluster name: hydroC
Last updated: Wed Jun 25 14:19:49 2014
Last change: Wed Jun 25 14:02:25 2014 via crm_resource on hynode1
Stack: cman
Current DC: hynode1 - partition with quorum
Version: 1.1.10-14.el6_5.3-368c726
2 Nodes configured
4 Resources configured


Online: [ hynode1 hynode2 ]

Full list of resources:

 ClusterIP      (ocf::heartbeat:IPaddr2):       Started hynode1
 Master/Slave Set: MSdrbdDATA [drbdDATA]
     Slaves: [ hynode1 hynode2 ]
 ShareDATA      (ocf::heartbeat:Filesystem):    Stopped

ShareData bleibt gestoppt, da kein Master vorhanden ist

Ich habe dieses Tutorial zunächst befolgt:
http://clusterlabs.org/doc/en-US/Pacemaker/1.1-pcs/html/Clusters_from_Scratch/_configure_the_cluster_for_drbd.html

So sieht die Schrittmacherkonfiguration aus:

Cluster Name: hydroC
Corosync Nodes:

Pacemaker Nodes:
 hynode1 hynode2

Resources:
 Resource: ClusterIP (class=ocf provider=heartbeat type=IPaddr2)
  Attributes: ip=10.0.0.100 cidr_netmask=32
  Operations: monitor interval=30s (ClusterIP-monitor-interval-30s)
 Master: MSdrbdDATA
  Meta Attrs: master-max=1 master-node-max=1 clone-max=2 clone-node-max=1 notify
=true
  Resource: drbdDATA (class=ocf provider=linbit type=drbd)
   Attributes: drbd_resource=r0
   Operations: monitor interval=60s (drbdDATA-monitor-interval-60s)
 Resource: ShareDATA (class=ocf provider=heartbeat type=Filesystem)
  Attributes: device=/dev/drbd3 directory=/share/data fstype=ext4
  Operations: monitor interval=60s (ShareDATA-monitor-interval-60s)

Stonith Devices:
Fencing Levels:

Location Constraints:
Ordering Constraints:
  promote MSdrbdDATA then start ShareDATA (Mandatory) (id:order-MSdrbdDATA-Share
DATA-mandatory)
Colocation Constraints:
  ShareDATA with MSdrbdDATA (INFINITY) (with-rsc-role:Master) (id:colocation-Sha
reDATA-MSdrbdDATA-INFINITY)

Cluster Properties:
 cluster-infrastructure: cman
 dc-version: 1.1.10-14.el6_5.3-368c726
 no-quorum-policy: ignore
 stonith-enabled: false

Ich habe seitdem verschiedene Dinge ausprobiert, wie das Festlegen einer Standortbeschränkung oder das Verwenden verschiedener Ressourceneinstellungen ... Ich habe dies einem anderen Tutorial entnommen:

 Master: MSdrbdDATA
  Meta Attrs: master-max=1 master-node-max=1 clone-max=2 notify=true target-role
=Master is-managed=true clone-node-max=1
  Resource: drbdDATA (class=ocf provider=linbit type=drbd)
   Attributes: drbd_resource=r0 drbdconf=/etc/drbd.conf
   Meta Attrs: migration-threshold=2
   Operations: monitor interval=60s role=Slave timeout=30s (drbdDATA-monitor-int
erval-60s-role-Slave)
               monitor interval=59s role=Master timeout=30s (drbdDATA-monitor-in
terval-59s-role-Master)
               start interval=0 timeout=240s (drbdDATA-start-interval-0)
               stop interval=0 timeout=240s (drbdDATA-stop-interval-0)

Das Ergebnis bleibt jedoch gleich. Keiner der Knoten wird zum Master befördert.

Ich würde mich über jede Hilfe freuen, die mich zur Lösung führt, danke im Voraus.

Infi
quelle
Nur um sicher zu gehen: Sie haben die Ressource ShareDATA gestartet? Die DRBD-Ressource wird (automatisch) nur dann zum Master befördert, wenn ein Grund vorliegt (eine andere Ressource hängt davon ab oder ist explizit konfiguriert).
Bis zum
Meines Wissens startet ShareDATA nicht, da es keinen MSdrbdDATA-Master gibt. Wenn ich versuche, ShareDATA manuell über 'crm_resource --force-start' zu starten, erhalte ich den gleichen Fehler, als würde ich versuchen, die DRBD-Ressource manuell bereitzustellen kann es nicht mounten, da es keine DRBD-Primärdatenbank gibt.
Infi
"gibt mir den gleichen Fehler" - was genau?
Bis zum
[root@hynode1 ~]# crm_resource --resource shareDATA --force-start Operation start for shareDATA (ocf:heartbeat:Filesystem) returned 1 > stderr: INFO: Running start for /dev/drbd3 on /share/data > stderr: /dev/drbd3: Wrong medium type > stderr: mount: block device /dev/drbd3 is write-protected, mounting read-only > stderr: mount: Wrong medium type > stderr: ERROR: Couldn't mount filesystem /dev/drbd3 on /share/data
Infi
Entschuldigung, ich weiß nicht, wie ich die Antworten richtig formatieren soll [root@hynode1 ~]# mount /dev/drbd3 /share/data -t ext4 mount: block device /dev/drbd3 is write-protected, mounting read-only mount: Wrong medium type
Infi

Antworten:

1

Stellen Sie sicher, dass Ihr DRBD-Gerät fehlerfrei ist. Wenn Sie # cat /proc/drbdund Blick auf seinen Zustand, sehen Sie die folgenden: cs:Connected, ro:Secondary/Secondary, und vor allem ds:UpToDate/UpToDate?

Ohne UpToDateDaten bewirbt der Ressourcenagent für DRBD KEIN Gerät. Wenn Sie gerade die Metadaten des Geräts erstellt haben und noch keinen einzelnen Knoten in die PrimaryRolle gezwungen haben , wird Ihr Festplattenstatus wie folgt angezeigt : ds:Inconsistent/Inconsistent. Sie müssen Folgendes ausführen, um DRBD mitzuteilen, welcher Knoten der SyncSourcefür den Cluster werden soll:# drbdadm primary r0 --force

Dies ist das einzige Mal, dass Sie DRBD unter normalen Umständen in die Grundschule zwingen müssen. also vergiss die --forceFlagge danach;)

Matt Kereczman
quelle