DRBDとは?特徴をわかりやすく解説

    ストレージには寿命があり、保存された情報は永遠に正常性を保証されるわけではありません。その為に別のストレージにデータをバックアップしたり、ストレージそのものを多重化してデータを保護することが重要です。今回紹介するは、ストレージデバイスを多重化し、データを複数のストレージに保存する仕組みで、DRBD(Distributed Replicated Block Device)と呼ばれているものです。同様の仕組みにソフトウェア/ハードウェアRAIDがあります。

    DRBDの概要

    DRBDとは

    DRBD(Distributed Replicated Block Device)とは、TCP/IPネットワークを通じて複数のサーバのストレージ(パーティション)をリアルタイムにミラーリング(複製)するソフトウェアです。RAID1のようなミラーディスクを構築することができます。ソフトウェア/ハードウェアRAIDは同じサーバ内のストレージを使って冗長化しますが、DRBDは複数のサーバのストレージを使うのが大きな違いです。

    大切なデータを失わないためのバックアップや、サービスの冗長化に役立つソフトウェアとして広く使用されています。DRBDはオープンソースで開発が進めれているため、無料で体験することができます。

    DRBDの特徴

    パフォーマンスが高い冗長化ストレージを実現

    DRBDの最大の特徴は、ストレージ(パーティション)の複製を通常のTCP/IPネットワークを利用して実現(ネットワークレプリケーション)することです。通常のネットワークを利用することで、特別なハードウェアを必要としません。Linux環境とミラーリングで使用するためのネットワークさえあれば、すぐにDRBDの機能を体験することができます。最近のDRBDではInfini-Bandなどの、高速で遅延の少ないネットワークを 使って、パフォーマンスが高い冗長化ストレージを実現できます。

     

    ネットワーク上で冗長化されたストレージを利用できる

    DRBDはファイルシステムよりも低いレイヤーで動作し、レプリケーションされたストレージをブロックデバイスとして使用することができます。そのデバイスは通常のストレージと同じように使用することができます。データを保存するアプリケーションはミラーリングを意識する必要なく、全てのアプリケーションをDRBDでリアルタイムにデータ複製しながら、動作させることができます。

     

    単一障害点がない低コストで安全なHAクラスタ環境

    DRBDとPacemakerを組み合わせると簡単かつ安全なハイアベイラビリティクラスタ環境(HAクラスタ環境)を構築することができます。DRBDを使用しない多くのHAクラスタ環境は、データ領域を複数のサーバで共有する「共有ストレージ」を利用して実現されています。これは共有ストレージに障害が発生した場合にサービスが継続できないだけでなく、重要なデータの損失につながる可能性があります。DRBDは複数のサーバにネットワークを通じてミラーリングを実現しているため、共有ストレージを使用しません。これがDRBDで実現する「シェアードナッシング」のHAクラスタ環境です。DRBDは、サーバの台数の削減、共有ストレージという単一障害点(Single point of failure)をなくすことができる低コストで安全なHAクラスタ環境を提供します。

     

    DRBDの活用シーン

    LINBIT HAを利用して信頼性の高いシステムを低いコストで構築した実績

    コストを抑えるためにLinuxでシステムを構築され、システムの冗長化までOSSで実現いただいた事例をご紹介します。

    【DRBD事例】OSSを使って1億円のコストを削減!止まらないシステムで業務改善

    ●大手通信業A社 
     電話通信機器システムの冗長化によりシステムの信頼性を向上

    ●交通関連業者B社 
     施設内電光掲示板システムのデータベースの冗長化

    ●大手Web企業C社
     メールシステムを冗長化して遠隔地にも分散。
     首都圏での災害時のバックアップシステムとして運用。

    ●旅行関連業者D社
     社内システムのデータバックアップを遠隔地に保存。
     従来は宅配便でテープを送ってバックアップを東京、大阪で分散保管していた業務が自動化。

    ●大手クラウドベンダE社 
     OpenStackのストレージ冗長化。製品より安価で高性能のストレージをOSSで構築。

     

    構築事例
    DRBDはiSCSIでWindowsからも使用できる

     

    DRBDの動作環境

    DRBDはLinux OS上で動作するソフトウェアです。Linuxのカーネルモジュール を必要とするため、同じUnix系OSであるOpenSolarisやFreeBSD、macOSでは 動作しません。現在パッケージが提供されているディストリビューションは以下の通りです。

    • Red Hat Enterprise Linux  6, 7, 8
    • SUSE Linux Enterprise Server  12、15
    • Oracle Linux 6.3、7、8
    • Debian GNU/Linux 9 ,10
    • CentOS  6, 7, 8
    • Amazon Linux
    • Ubuntu Server Edition 14.04 LTS 16.04 LTS 18.04 LTS
    • XenServer 7 (DRBD のみ)

    パッケージが提供されていなくても、ソースコードが公開されているため、一 般的なLinuxディストリビューションであれば、ソースコードをコンパイルして利用できます。

    またベータ版としてWindows版も公開されています。

     

    DRBDを利用するために必要なハードウェア

    DRBDは2台のサーバ間のパーティションをネットワーク越しにレプリケーショ ンするソフトウェアであるため、サーバが2台以上必要となります。2台のサー バの性能は合わせるのが望ましいのですが、違っていても動作は可能です。

     

    DRBDのライセンス

    DRBDはオープンソースのソフトウェア(OSS)としてウィーンにあるLINBIT社 が開発を進めています。GNU Public License 2 (GPLv2)でライセンスされてい ます。

     

    DRBD 参考情報

    DRBDに関する参考情報について、こちらもご参照ください。

    DRBDの構成

    • DRBDの基本構成
    • マルチノード(最大4台まで)

    DRBDのパフォーマンス

    • ネットワークカード
    • CPUとメモリ
    • ストレージのI/Oスピード

    ハイアベイラビリティ環境(HA環境)

    • オープンソースによる冗長化
    • シェアードナッシングクラスタの実現

    DRBDはiSCSIでWindowsからも使える

    • DRBD+Linux-HA+iSCSIターゲットの構成図

    DRBDを使用したディザスタリカバリー

    • DRBD3ノードによるHAクラスタ環境+ディザスタリカバリー環境

     

    また、こちらの記事ではDRBDのもう少し詳しい概要や、使うことのメリットをご紹介しています。

     

    お問い合わせ

    DRBD、LINBITに関してご相談ございましたら、以下までお気軽にお問い合わせください。

    関連記事