세 개의 노드가 있는 drbd +pacemaker 클러스터가 있는데 그 중 하나는 쿼럼 장치 전용입니다. 업그레이드 가능한 drbd-resource가 세 장치 모두에서 실행되어야 하지만 중재 장치에서는 절대 업그레이드되지 않도록 맥박 조정기 리소스를 구성하려고 합니다. 리소스에 위치 제한을 설정하려고 시도했지만 이로 인해 Pacemaker가 쿼럼 장치에서 리소스를 전혀 시작할 수 없게 되어 drbd가 장애 조치 시 쿼럼을 유지할 수 없게 되었습니다.
원하는 상태는 다음과 같습니다.
- drbd 리소스가 세 노드 모두에서 시작됩니다.
- drbd 리소스를 승격할 수 있습니다.
- 심박조율기는 절대로 합법적인 기기를 홍보하지 않습니다.
문서에서 아무것도 찾을 수 없지만 drbd 리소스에서 놓친 "장치 X에서 업그레이드하지 않음"과 같은 매개변수를 가정하고 있습니다.
답변1
이 작업에는 단순한 위치 제약 조건을 사용하는 것만으로는 충분하지 않습니다. Pacemaker는 rules
필요한 고급 표현을 처리할 수 있습니다.
RHEL/Pacemaker 버전에 따라 다음 규칙 중 하나가 적합합니다.
# pcs constraint location <clone> rule role=promoted score=-INFINITY node eq <quorum-node-name>
# pcs constraint location <clone> rule role=master score=-INFINITY node eq <quorum-node-name>