ブログ名はまだ無い(仮)

インフラエンジニアのツイッターには書ききれないつぶやきです



DRBD9環境をdrbdmanageを使って簡単構築 #2(構築編)

インストールが完了したら、引き続きDRBD9の環境を構築していきます。

前回#1のDRBD9インストール編は以下になります。
http://ksawada.hatenablog.com/entry/2016/06/10/111030


前回と同じ構成ですが、以下の構成を構築します。
f:id:smile_0126:20160610104528p:plain

初期化

drbdctlをインストールするノードで実行します。

# drbdmanage init 192.168.2.191

途中で「Confirm: yes/no:」が表示される所は「yes」を入力してください。

ノード追加

# drbdmanage add-node drbd9-2 192.168.2.192
# drbdmanage add-node drbd9-3 192.168.2.193

途中で「Confirm: yes/no:」が表示される所は「yes」を入力してください。

ノード追加確認

ノードが追加されたことを以下のコマンドで確認します。

# drbdmanage list-nodes
+-------------------------------------------------------+
| Name    | Pool Size | Pool Free |             | State |
|-------------------------------------------------------|
| drbd9-1 |     20476 |     20468 |             |    ok |
| drbd9-2 |     20476 |     20468 |             |    ok |
| drbd9-3 |     20476 |     20468 |             |    ok |
+-------------------------------------------------------+

リソース登録

リソースを登録します。

# drbdmanage add-resource r0
# drbdmanage add-resource r1

リソース登録確認

次にリソースが登録されたことを確認します。

# drbdmanage list-volumes --groupby Size --show Port
+------------------------------------------------------------------------------+
| Name | Vol ID |      Size | Minor | Port |                           | State |
|------------------------------------------------------------------------------|
| r1   |      * |         * |     * | 7001 |                           |     * |
| r0   |      * |         * |     * | 7000 |                           |     * |
+------------------------------------------------------------------------------+

r0とr1の2つのリソースが登録されたことを確認します。さらにポートは7000と7001が自動的に割り当てられました。

ボリューム登録

次にリソースに対してボリュームを登録します。
roとr1にそれぞれ10GBずつで登録します。

# drbdmanage add-volume r0 10GB
# drbdmanage add-volume r1 10GB

ボリューム登録確認

次にリソースに対してボリュームを登録します。
roとr1にそれぞれ10GBずつで登録します。

# drbdmanage list-volumes --groupby Size --show Port
+------------------------------------------------------------------------------+
| Name | Vol ID |      Size | Minor | Port |                           | State |
|------------------------------------------------------------------------------|
| r0   |      0 | 9.313 GiB |   100 | 7000 |                           |    ok |
| r1   |      0 | 9.313 GiB |   101 | 7001 |                           |    ok |
+------------------------------------------------------------------------------+

デプロイとアサイン

ここまでで、リソース登録とリソースに対してボリュームを登録をしました。
これだけでも使えそうですが、実はここまでではまだDRBDを使うための箱を準備したにすぎません。最後にデプロイもしくはアサインをしてDRBDのディスクとして使用可能になります。

デプロイとアサインはボリュームとディスクを紐づけてDRBDのディスクとして使用可能にします。
デプロイは指定した数のサーバ数に対して自動的に割り当てを行います。

アサインはサーバを指定して割り当てをすることができます。

デプロイ

デプロイは以下のコマンドで実施します。

# drbdmanage deploy-resource r0 3
# drbdmanage deploy-resource r1 3

上記で3台のサーバにそれぞれデプロイされます。
以下の様になります。
f:id:smile_0126:20160613154253p:plain

アサイン

アサインは以下のコマンドで実施します。

# drbdmanage assign r0 drbd9-1
# drbdmanage assign r0 drbd9-2
# drbdmanage assign r1 drbd9-2
# drbdmanage assign r1 drbd9-3

以上で本ページの冒頭で示した構成図のようになります。
以下の様になります。
f:id:smile_0126:20160610104528p:plain

以上で準備完了です。

あとはファイルシステムを作成しマウントすればファイルの書き込みが可能です。

ファイルシステム作成

以下のコマンドでファイルシステムを作成します。
CentOS7デフォルトのxfsでファイルシステムを作成します。

# mkfs -t mkfs.xfs /dev/drbd100
# mkfs -t mkfs.xfs /dev/drbd101

マウント

最後にマウントします。
マウントポイントとして/dataと/data2を作成します。

# mkdir /data
# mkdir /data2
# mount /dev/drbd100 /data
# mount /dev/drbd101 /data

状態確認

以下のコマンドでDRBDの状態を確認します。

# drbdsetup status

以上でDRBD環境の構築は終了です。