DRBD: 장애 조치 또는 노드 재시작 시 "장치 [/dev/drbd0]를 /mydata로 마운트할 수 없습니다."

DRBD: 장애 조치 또는 노드 재시작 시 "장치 [/dev/drbd0]를 /mydata로 마운트할 수 없습니다."

각각 CentOS 7 서버가 있는 두 개의 ESXi 호스트를 사용하여 클러스터형 시스템을 만들고 있습니다.

파일 시스템을 생성하고 node1.

대기 또는 재부팅을 수행하면 장애 조치가 node01제대로 작동합니다 node02. 그러나 node02연속적으로 실행 하면 node01파일 시스템을 마운트할 수 없다는 리소스 오류가 반환됩니다./mbdata

나는 다음 메시지를 받았습니다:

Failed Resource Actions:
* mb-drbdFS_start_0 on node01 'unknown error' (1): call=75, status=complete, exitreason='Couldn't mount device [/dev/drbd0] as /mbdata',
    last-rc-change='Thu May  7 16:09:25 2020', queued=1ms, exec=129ms

리소스를 정리하고 node02온라인 상태가 되면 다시 실행되기 시작합니다. 왜 이런 오류가 발생하는지 구글링을 해봤지만, 내가 볼 수 있는 유일한 것은 서버가 실제로는 마스터(슬레이브가 아님)인 새 마스터에게 알리지 않는다는 것입니다. 하지만 활성화하는 데 도움이 되는 어떤 것도 찾지 못했습니다.

umount두 시스템 모두에서 시도해 보았지만 일반적으로 설치 node02되지 않습니다. 두 시스템 모두에 시스템을 마운트해 보았습니다(그러나 그 중 하나는 읽기 전용이고 이를 제어하는 ​​클러스터의 목적에 맞지 않습니다). 처음에 튜토리얼을 따랐지만 오류를 나열하지 않았습니다. 단지 새 노드로 전송될 것이라고 말했기 때문에 길을 잃었습니다!

내가 만든 유일한 차이점은 그것을 /mnt대상으로 사용하는 것이 아니라 내 자신의 디렉토리를 사용한다는 것입니다. 하지만 그것이 문제가 될 것이라고 생각하지 않습니다.

내가 원하는 것은:

  • 각 ESXi 호스트(자체 가상 머신을 다시 시작하기 위한 물리적 서버)에 펜스가 있습니다.
  • 공유 스토리지를 가질 수 있도록 DRBD 스토리지가 있어야 합니다.
  • 클라이언트가 액세스할 수 있는 가상 IP를 갖습니다.
  • Apache가 웹 서버를 실행하게 하세요
  • SQL 데이터베이스용 MariaDb가 있습니다.
  • 동일한 서버(코로케이션)에서 실행하고 다른 서버를 전체 백업으로 사용

여기에 이미지 설명을 입력하세요.

실행될 때 다음이 있습니다.

[root@node01 ~]# pcs status
Cluster name: mb_cluster
Stack: corosync
Current DC: node01 (version 1.1.21-4.el7-f14e36fd43) - partition with quorum
Last updated: Fri May  8 09:46:59 2020
Last change: Fri May  8 09:22:59 2020 by hacluster via crmd on node01

2 nodes configured
8 resources configured

Online: [ node01, node02 ]

Full list of resources:

mb-fence-01 (stonith:fence_vmware_soap):        Started node01
mb-fence-02 (stonith:fence_vmware_soap):        Started node02

Master/Slave Set: mb-clone [mb-data]
    Masters: [ node01 ]
    Slaves: [ node02 ]

Resource Group: mb-group
    mb-drbdFS   (ocf::heartbeat:Filesystem):    Started node01
    mb-vip      (ocf::heartbeat:IPaddr2):   Started node01
    mb-web      (ocf::heartbeat:apache):    Started node01
    mb-sql      (ocf::heartbeat:mysql):     Started node01

      Daemon Status:
          corosync: active/enabled
          pacemaker: active/enabled
          pcsd: active/enabled

제한사항:

[root@node01 ~]# pcs constraint list --full
Location Constraints:
    Resource: mb-fence-01
    Enabled on: node01 (score:INFINITY) (id:location-mb-fence-01-node01-INFINITY)

    Resource: mb-fence-02
    Enabled on: node02 (score:INFINITY) (id:location-mb-fence-02-node02-INFINITY)

Ordering Constraints:
    start mb-drbdFS then start mb-vip (kind:Mandatory) (id:order-mb-drbdFS-mb-vip-mandatory)
    start mb-vip then start mb-web (kind:Mandatory) (id:order-mb-vip-mb-web-mandatory)
    start mb-vip then start mb-sql (kind:Mandatory) (id:order-mb-vip-mb-sql-mandatory)
    promote mb-clone then start mb-drbdFS (kind:Mandatory) (id:order-mb-clone-mb-drbdFS-mandatory)

Colocation Constraints:
    mb-drbdFS with mb-clone (score:INFINITY) (with-rsc-role:Master) (id:colocation-mb-drbdFS-mb-clone-INFINITY)
    mb-vip with mb-drbdFS (score:INFINITY) (id:colocation-mb-vip-mb-drbdFS-INFINITY)
    mb-web with mb-vip (score:INFINITY) (id:colocation-mb-web-mb-vip-INFINITY)
    mb-sql with mb-vip (score:INFINITY) (id:colocation-mb-sql-mb-vip-INFINITY)

Ticket Constraints:

답변1

DRBD 장치가 기본 장치로 승격된 후에만 파일 시스템을 시작하도록 클러스터에 지시하는 순서 제약 조건이 없습니다. 다음 주문 제약 조건을 추가합니다.

# pcs constraint order promote data then start drbd-FS

관련 정보