Placeholder image

デュアルプライマリ — 使う前によく考えよう

デュアルプライマリ構成は、DRBD バージョン8における主要な拡張機能のひとつです。1つのDRBDリソースに対して、2台のノードの両方から同時に書き込めるようになるため、パフォーマンス向上、負荷分散、システム構成のシンプル化などの期待から注目されることがあります。

DRBDのベーシックな動作モードであるプライマリ/セカンダリ構成(シングルプライマリ)の動作イメージと書き込みデータの流れは、次の図のようになります。

シングルプライマリ

デュアルプライマリ構成にすると、両方のノードのアプリケーションが、1つのDRBDリソースに書き込めるようになります。

デュアルプライマリ

しかし、デュアルプライマリの採用、設計、構築、運用にあたって、以下のようなきわめて重要な必要条件や禁止事項があります。

  • デュアルプライマリ構成のDRBDリソースの上で通常ファイルシステム(ext3、ext4、xfsなど)を使うことはできない。たとえ片方がリードオンリーマウントであっても。
  • ファイルシステムを置く場合には、GFS2やOCFS2などのクラスタ・ファイルシステムが必須である。
  • デュアルプライマリ構成はプロトコルCが必須である。プロトコルA/Bおよび遠隔地とのレプリケーションは使えない。
  • デュアルプライマリ構成でDRBD通信の障害が起きると、ただちにスプリットブレインになる。
  • デュアルプライマリ構成ではフェンシングの設定が不可欠である。
  • フェンシング機構の動作中、クラスタ・ファイルシステム経由のディスクI/Oは中断される。

デュアルプライマリ構成でGFS2やOCFS2などのクラスタ・ファイルシステムが必要なことは、「DRBDユーザーズガイド」にも明記されていて、かなり広く認知されているようです。しかし、運用上のややこしさや難しさに関するプロトコルの制約、通信障害時の挙動、フェンシングの必要性などは、あまり知られていません。

LINBIT社は”Dual Primary — Think Twice”という技術ドキュメントを発行しています。このドキュメントをベースにして、その後の経験や知見を加味した「デュアルプライマリ — 使う前によく考えよう」という技術ドキュメントを作成しました。このドキュメントでは、デュアルプライマリ構成のベースと実際を深く掘り下げて、上述の留意点を導き出しています。

デュアルプライマリ構成を検討したい方はもちろん、すでにデュアルプライマリ構成でシステムを構成している方も、将来起こるかもしれない障害への対応を考えるために、ぜひご一読ください。

「デュアルプライマリ — 使う前によく考えよう」はこちらからダウンロードしていただけます。

DOWNLOAD
ダウンロード

img06

DOWNLOAD

カタログ、セミナー資料のダウンロード

img06

DOWNLOAD

技術資料、マニュアルのダウンロード

img06

DOWNLOAD

ユーザ事例のダウンロード