DRBD v9.17(커널 v9.1.4)
drbd
서비스로 실행할 때와 도구를 수동으로 사용할 때의 일반적인 역할을 이해하려고 노력 중입니다 drbdadm
. 이는 온라인에서 본 일부 연습보다 더 새로운 것 같습니다.
이 서비스와 도구는 언제 사용해야 하며 drbdadm
장애 조치 제어 pacemaker
와 관련하여 어디에 적합합니까 ?drbd
리소스를 수동으로 생성 drbdadm
하고 시작했는데 이제 UPToDate
status 명령을 사용하여 두 노드 모두에 표시됩니다. 장애 조치를 위해 맥박 조정기에서 해당 기능을 구현하는 방법을 알아야 합니다. 여기서 큰 그림을 놓치고 있는 것 같습니다. 맥박 조정기에 리소스를 추가하는 것은 유동 IP보다 조금 더 복잡해 보입니다... 읽어주셔서 감사합니다!
답변1
drbdadm
그것은 처음부터 존재했기 때문에 어떤 튜토리얼보다 더 새로운 것이 아닙니다.
활성화되면 서비스는 DRBD 커널 모듈을 로드하고 시작 시 노드의 모든 DRBD 장치를 불러오지만( drbdadm up all
이전과 마찬가지로) 마스터로 승격하려고 시도하지 않으며 장치 마운트에 실패합니다. 이는 DRBD 노드를 기본으로 승격한 다음 DRBD 기본을 사용하여 서비스를 시작하기 위해 DRBD와 함께 Pacemaker를 자주 사용하는 것입니다.
DRBD 9.x에는 기본적으로 자동 업그레이드가 활성화되어 있으므로 먼저 기본으로 승격하지 않고 장치를 마운트(또는 액세스)하려고 할 때 현재 기본 노드가 아닌 다른 노드가 없으면 자동으로 기본으로 승격되므로 다음을 수행할 수 있습니다. 그것에 액세스하십시오.
Pacemaker는 클러스터 리소스 관리자이므로 해당 작업은 다양한 노드에서 서비스를 시작/중지/모니터링하고 해당 리소스의 올바른 순서와 배치를 확인하는 것입니다. DRBD는 Pacemaker에서 "다중 상태"(또는 ms
) 복제 리소스로 제어됩니다. 이는 기본적으로 DRBD의 경우 여러 상태("기본" 및 "보조")가 있는 복제 세트이지만 데이터베이스 복제 세트에서는 가능합니다. "기본" 및 "대기"임).
2노드 Pacemaker 클러스터에 구성된 DRBD 리소스의 예제 조각은 r0
다음과 같습니다.
primitive p_drbd_r0 ocf:linbit:drbd \
params drbd_resource=r0 \
op start interval=0s timeout=240 \
op promote interval=0s timeout=90 \
op demote interval=0s timeout=90 \
op stop interval=0s timeout=100 \
op monitor interval=29 role=Master \
op monitor interval=31 role=Slave
ms ms_drbd_r0 p_drbd_r0 \
meta master-max=1 master-node-max=1 \
notify=true clone-max=2 clone-node-max=1
호스트에 마운트된 파일 시스템을 관리하려면 r0
파일 시스템 리소스와 이를 마스터 DRBD 노드에 바인딩하는 제약 조건을 추가해야 합니다.
primitive p_fs_drbd Filesystem \
params device="/dev/drbd0" directory="/drbd" \
fstype=xfs options="noatime,nodiratime" \
op start interval=0 timeout=60s \
op stop interval=0 timeout=60s \
op monitor interval=20 timeout=40s
colocation cl_fs-with-ms_drbd_r0 inf: p_fs_drbd:Started ms_drbd_r0:Master
order o_ms_drbd_r0-before-fs ms_drbd_r0:promote p_fs_drbd:start
Pacemaker에서 DRBD 장치를 관리하려면 먼저 DRBD 장치에 파일 시스템을 만들어야 합니다.
DRBD의 역할은 노드 간 블록 장치를 복제하는 것입니다.