DRBDの概要

DRBDとは

DRBD (Distributed Replicated Block Device)は、ネットワークを通じてハードディスク(ブロックデバイス)をリアルタイムに複製(レプリケート)するソフトウェアです。大切なデータを失わないためのバックアップや、サービスの冗長化に役立つソフトウェアとして、10年以上にわたって広く使用されています。

DRBD動作概念図

ライセンス

DRBDはGNU Public License 2 (GPLv2)に準拠したオープンソース・ソフトウェアです。

開発とサポート

DRBDはウィーン市(オーストリア)に本社を置くLINBIT Information Technology GmbHが中心になって開発しています。
多くのディストリビューションがバイナリパッケージを提供していて無料で使える上に、メーリングリスト(今のところ英語のみ)によるコミュニティ・サポートがあるため、世界中で約20万セット(推定値)の稼働実績があります。
一方、LINBIT社、サードウェアおよびその代理店が商用サポートを提供しているため、ミッションクリティカルなシステムでも安心して使えます。

動作環境

DRBDはLinux OS上で動作するソフトウェアです。Linuxのカーネルモジュールを必要とするため、他のUNIX系OSやWindowsなどでは動作しません。Red Hat Enterprise Linux、SUSE Linux Enterprise Server、Debian GNU/Linux、Ubuntu Server Editionなど、主要なLinuxディストリビューションのほとんどでバイナリパッケージが提供されています。
DRBDは複数のサーバにまたがってネットワーク越しにブロックデバイスをレプリケートするため、ほぼ同等仕様のサーバが2台以上必要です。

おもな特徴

リアルタイムレプリケーション
LAN上のレプリケーションでは、レプリケーション元とレプリケーション先の両方にデータを書き込んでから次の書き込みに進むという、完全同期レプリケーションを容易に実現できます。
高速レプリケーション
150,000 IOPS以上のレプリケーション性能を発揮できるので、SSDなどの高速ストレージの性能をフル活用できます。
大容量レプリケーション
1ボリュームあたり最大1ペタバイトのデータ領域をレプリケートできます。
データ種別や形式を選ばない
DRBDはハードディスクなどのブロックのレベルで動作するため、ファイルシステム、ファイルタイプ、データ種別を選びません。iSCSIターゲットのディスク領域をDRBDでレプリケートすれば、NTFS上のWindows系OSのデータを冗長化することも可能です。
シェアードナッシング
DRBDとPacemakerを組み合わせると、単一障害点(Single point of failer)を持たない安全なハイアベイラビリティクラスタ環境(HAクラスタ環境)を簡単に構築できます。
従来の共有ストレージを使うHAクラスタ環境では、共有ストレージが最大のリスク要因になります。故障によって、サービスの中断だけでなく重要なデータを喪失する恐れがあるからです。
DRBDを使うと、共有(単一コンポーネント)ではなく分散(冗長化)を簡単に実現できるので、単に高価な共有ストレージを節約できるだけでなく、原理的に安全性が高いシステムを構成できます。
多ノード対応
現在主流のバージョン8.4では、DRBDは1対1のレプリケーションのみに対応していますが、複数のDRBDを積み重ねることによって、3、4、…など多ノードにリアルタイムにレプリケートできます。
開発中のバージョン9は、最大32ノードまでリアルタイムにレプリケートできる予定です。

主な情報源