
3つのノードを持つdrbd + pacemakerクラスタがあり、そのうちの1つは定足数デバイス専用です。アップグレード可能なdrbd-resourceは3つのデバイスすべてで実行する必要がありますが、アービトレーションデバイスでは絶対にアップグレードされないようにペースメーカーリソースを設定しようとしています。リソースに位置制限を設定しようとしましたが、これにより、Pacemakerが定足数デバイスでリソースをまったく起動できなくなり、drbdがフェイルオーバー中に定足数を維持できなくなりました。
希望の状態は次のとおりです。
- drbd リソースは、3 つのノードすべてで開始されます。
- 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>