Drbd Primary/Primary構成のスプリットブレインについて質問/好奇心があります。 Drbd Primary/Primaryで構成されたHost1
とHost2
の2つのノード(ホスト)と、レプリケートされた領域の2つの異なる共有(NFS、CIFS o iSCSI)(/drbd
など)を想定します。
/drbd/file1.data
/drbd/file2.data
クライアントのプールがHost1
共有の読み取りと書き込みのみfile1.data
によってのみアクセスし、別のプールがHost2
共有によってのみfile2.data
にアクセスする場合、このシナリオでは、スプリットブレインの状況を回避する必要があります。 1つのノードに障害が発生した場合ですか、それとも単なる推測ですか?
最終的な目的は、通常の状態の2つのノード間の負荷分散と、障害が発生した場合にのみ1つのノードに折りたたむことです。
ありがとうございました!
エディ
oneDRBDリソースがプリム/プリムモードであり、異なるノードから書き込む限り、意志ネットワーク障害の場合に脳を分割します。
また、/drbd
は、2つのサブディレクトリのみを持つ通常の(非クラスター)ファイルシステムであり、2つのホストで共有されます。ローカルファイルシステムは他のマシンを認識しないため、通常の操作でもデータの破損は保証です。ブロックデバイスに書き込んでいます。
信頼性の高いHA /負荷分散インストールの作成は高度なトピックであり、達成したい内容に大きく依存しますが、何らかの形式のクラスター管理ソフトウェア、場合によってはクラスター化されたファイルシステムやその他の多くのコンポーネントが含まれます。
使用するファイルシステムによって異なります。
NFSを使用すると、書き込みが異なるdrbdブロックに送られることを保証できません(したがって、「discard-zero-changes」はスプリットブレインからの回復に役立ちません)。
ただし、クラスター対応ファイルシステム(ocfsなど)を上で使用すると、特に別のディレクトリブランチを使用している場合は、後でデータが破損しない可能性が高くなります。
しかし、あなたのシナリオでは、通常のext3ファイルシステムを使用して、プライマリ/セカンダリモードで2つの別々のデバイスを使用します。