ファイルシステムを作成します。DRBD 9では、「drbd100」から順にデバイスが作成されます。
# mkfs -t ext4 /dev/drbd100 # mkfs -t ext4 /dev/drbd101
DRBD領域をマウントします。「/data」と「/data2」というディレクトリを作成し、それぞれにDRBD領域をマウントします。
# mkdir /data # mkdir /data2 # mount /dev/drbd100 /data # mount /dev/drbd101 /data2
「drbdsetup」コマンドでDRBD 9の状況を確認します。コマンドは一号機で実行します。
# drbdsetup status .drbdctrl role:Primary volume:0 disk:UpToDate volume:1 disk:UpToDate DRBD9-2 role:Secondary volume:0 peer-disk:UpToDate volume:1 peer-disk:UpToDate DRBD9-3 role:Secondary volume:0 peer-disk:UpToDate volume:1 peer-disk:UpToDate r0 role:Primary disk:UpToDate DRBD9-2 role:Secondary peer-disk:UpToDate DRBD9-3 role:Secondary peer-disk:UpToDate r1 role:Primary disk:UpToDate DRBD9-2 role:Secondary peer-disk:UpToDate DRBD9-3 role:Secondary peer-disk:UpToDate
ここでは、一号機がそれぞれのroleで「Primary」になっていることを確認します。併せて、二号機(DRBD9-2)、三号機(DRBD9-3)が「Secondary」として登録され、さらにステータスが同期待ちである「UpToDate」になっていることを確認します。これによって、3台でリアルタイムにデータ同期ができる状態となりました。
DRBD 8まではここまで構築するのに、それぞれ設定ファイルを記述/修正した上で、各サーバでDRBDの起動と初期同期の設定を手動で行うことが必要でした。一方、DRBD 9に備わったDRBD Manageでは、この一連の流れをコマンドベースで実施できるようになりました。これまで手動で行ってきた設定ファイルの生成や初期同期が自動化され、構築までの時間はかなり短縮できるようになったと思います。
DRBD 9では、この構成から、リソースを移動したり、サーバの台数を増やしてスケールアウトしたりする管理も簡単に行えます。
「リソースの移動」としましたが、正しくは「ホストからリソースを削除して、再度割り当てる」作業となります。ちょっと試してみましょう。三号機(DRBD9-3)からリソース:r1を削除してみます。
# drbdmanage unassign-resource r1 DRBD9-3 Operation completes successfully
正しく削除されたかどうかを確認します。
# drbdmanage list-assignments +-------------------------------------------------------+ | Node | Resource | Vol ID | | State | |-------------------------------------------------------| | DRBD9-1 | r0 | * | | ok | | DRBD9-1 | r1 | * | | ok | | DRBD9-2 | r0 | * | | ok | | DRBD9-2 | r1 | * | | ok | | DRBD9-3 | r0 | * | | ok | +-------------------------------------------------------+
三号機(DRBD9-3)からリソース:r1が削除されたことが確認できました。
再度リソースを割り当てる場合は、前述した「drbdmanage assign <リソース名> <ホスト名>」コマンドで再びアサインできます。ある物理サーバだけ一時的にメンテナンスを行うといった場面で、これまでより効率よく運用できるでしょう。
次回は、Ansibleを使い、今回実践した一連の構築作業を「自動化」するテクニックを解説する予定です。
さまざまなIT関連業務経験ののちに2013年よりインフラエンジニアとしての業務に携わる。また、DRBDを始めとするオープンソースソフトウェアのサポート業務にも携わっている。ツイッターでDRBDの情報発信も行っている。TwitterID:@ksawada1979。
Copyright © ITmedia, Inc. All Rights Reserved.