각각 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