Ресурс DRBD кардиостимулятора не повышается до уровня мастера ни на одном узле
Во-первых, я не специалист по Linux, я следовал учебным пособиям и работал с помощью Google, до сих пор это работало нормально, но в настоящее время я столкнулся с проблемой.
Я использую CentOS 6.5 и DRBD версии 8.4.4.
У меня есть два узла, на которых работает кардиостимулятор, и пока все работает, я настроил DRBD и могу вручную установить узел в качестве основного и смонтировать ресурс DRBD, чтобы он также работал.
Теперь я создал ресурс кардиостимулятора для управления DRBD, но он не может обеспечить управление любым из двух узлов, что также препятствует его подключению.
шт статус выглядит так:
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 остается остановленным, потому что нет мастера
Я изначально следовал этому уроку:
http://clusterlabs.org/doc/en-US/Pacemaker/1.1-pcs/html/Clusters_from_Scratch/_configure_the_cluster_for_drbd.html
Вот как выглядит конфигурация кардиостимулятора:
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
С тех пор я пробовал разные вещи, такие как установка ограничения местоположения или использование других настроек ресурса... Я взял это из другого урока:
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)
но результат остается тем же, ни один из узлов не будет повышен до мастер-уровня.
Буду признателен за любую помощь, которая поможет мне найти решение, заранее спасибо.
1 ответ
Убедитесь, что ваше устройство DRBD исправно. если ты # cat /proc/drbd
и посмотрите на его состояние, вы видите следующее: cs:Connected
, ro:Secondary/Secondary
, и, самое главное, ds:UpToDate/UpToDate
?
Без UpToDate
данные, ресурсный агент для DRBD НЕ будет продвигать устройство. Если вы только что создали метаданные устройства и не заставили ни одного узла Primary
роль еще, вы увидите, что ваше состояние диска: ds:Inconsistent/Inconsistent
, Вам нужно будет выполнить следующее, чтобы сообщить DRBD, какой узел должен стать SyncSource
для кластера: # drbdadm primary r0 --force
Это единственный раз, когда вам нужно заставить DRBD перейти на Первичный в обычных условиях; так что забудь --force
флаг после этого;)