Distributed Replicated Block Device (DRBD)は、 ストレージのレプリケーション(複製)のためのソフトウェアで、 シェアードナッシングを実現します。 DRBDはサーバ間でブロックデバイス(ハードディスク、パーティション、 論理ボリュームなど)の内容をミラーします。
DRBDによるミラーは、次の特徴を持ちます。
リアルタイムレプリケーション . 上位アプリケーションがデバイスのデータを書き換えると、 そのデータをリアルタイムでレプリケートします。
アプリケーションから透過的 . アプリケーションはミラーされたデバイスに1回書き込むだけですが、 実際にはデータはミラーされるすべてのコンピュータのデバイスに書き込まれます。
同期および非同期の両方に対応 . 同期的に動作している場合、全部のコンピュータのディスクへの書き込みが完了した後で、 アプリケーションは完了通知を受け取ります。 非同期的に動作しているときは、ローカルディスクへの書き込みが完了したときに、 アプリケーションは完了通知を受け取ります。 この場合、他のシステムへの書き込みは後で行われます。
DRBDのコア機能はLinuxのカーネルモジュールとして実装されています。 OSのI/Oスタックの一番底に近い場所でDRBDは仮想的なブロックデバイスを作ります。 このために、DRBDは非常に柔軟で応用範囲が広く、 さまざまなアプリケーションの可用性を高めるために利用できます。
![]() | 重要項目 |
|---|---|
その定義とLinuxカーネルアーキテクチャとの関連にもとづき、 DRBDは上位レイヤに関して一切関知しません。 このため、DRBDは上位レイヤに対して何らかの機能を付与できません。 たとえば、DRBDはファイルシステムの故障を検出できません。 またext3やXFSなどのファイルシステムに対して アクティブ-アクティブクラスタ機能を追加することもできません。 |