Aug 142012
Pacemaker + drbdの構成でリソースレベルフェンシングをやってみました。
8.3. Using resource-level fencing in Pacemaker clusters
drbdのリソースに以下を設定してみます。
resource <resource> { disk { fencing resource-only; ... } handlers { fence-peer "/usr/lib/drbd/crm-fence-peer.sh"; after-resync-target "/usr/lib/drbd/crm-unfence-peer.sh"; ... } ... }
Masterな状態で動作している1号機(pcmk-1)のN/Wを切断すると2号機(pcmk-2)がMasterになります。
その際以下のlocationが設定されてpcmk-2以外のスコアが-INFINITYに設定されることが確認できました。
<rsc_location rsc="WebDataClone" id="drbd-fence-by-handler-wwwdata-WebDataClone"> <rule role="Master" score="-INFINITY" id="drbd-fence-by-handler-wwwdata-rule-WebDataClone"> <expression attribute="#uname" operation="ne" value="pcmk-2" id="drbd-fence-by-handler-wwwdata-expr-WebDataClone"/> </rule> </rsc_location>
この状態で1号機が復活しても、cibには上記locationが設定されているのでMasterになれないことになります。
データが同期されるとafter-resync-target指定のスクリプトが実行され、locationの制約が削除されます。
Sorry, the comment form is closed at this time.