LoginSignup
12
12

More than 5 years have passed since last update.

DRBD 8.4 の設定、切り替え手順(Primary/Secondaryバージョン)

Last updated at Posted at 2015-08-31

概要

  • DRBD8.4の設定、切り替え手順(Primary/Secondaryバージョン)になります
  • Master-Slave構成になります。

設定内容

  • 両方のホストで作業してください

①DRBDで使うディスクとパーティションの追加

$ sudo fdisk -cu /dev/vda
とかでパーティション作る

### 今回はvda4ができました。使えるようにします。
$ sudo pvcreate /dev/vda4
$ sudo dd if=/dev/zero of=/dev/vda4 bs=1M count=1

②DRBDのインストール、設定、ファイルシステム作成、マウント用ディレクトリ作成(新しいノードの追加)

### 8.4.4をwgetで落としてインストールします。最新バージョンだと色々とbug fixされてるので、そちらを使用。 http://git.drbd.org/?p=drbd-8.4.git;a=blob;f=ChangeLog;hb=HEAD
$ cd /tmp
$ sudo wget http://ftp.kddilabs.jp/Linux/RPMS/elrepo/elrepo/el6/x86_64/RPMS/drbd84-utils-8.4.4-2.el6.elrepo.x86_64.rpm
$ sudo wget http://ftp.kddilabs.jp/Linux/RPMS/elrepo/elrepo/el6/x86_64/RPMS/kmod-drbd84-8.4.4-1.el6.elrepo.x86_64.rpm
$ sudo rpm -Uvh *drbd*

### DRBDの設定
$ sudo vim /etc/drbd.d/global_common.conf
global {
         usage-count no;
}
common {
         net {
                 protocol C;
         }
         syncer {
                 rate 100M;
         }
}

### データを同期する設定。今回はdataという名前で設定します
$ sudo vim /etc/drbd.d/sync.res
resource data {
    volume 0 {
        device /dev/drbd_data minor 0;
        disk /dev/vda4;
        meta-disk internal;
    }
    on host-192-168-1-1 {
        address 192.168.1.1:7789;
    }
    on host-192-168-1-2 {
        address 192.168.1.2:7789;
    }
}
# デバイスにマイナー番号が使用されていない場合は、minor0をつける。名前/dev/drbd_で始まらないとだめ。
# diskは論理ボリュームだとだめ。
#
# /etc/drbd.conf:7: Parse error: 'dialog-refresh | minor-count | disable ip-verification' expected, but got '・
# ってのは文法エラーだと出たりします。全角スペースがあっても怒られるよ!
# onの部分は$ uname -nの名前に設定します

### drbdのデバイスを作成
$ sudo drbdadm create-md data

### drbd起動。新しく追加する場合は、追加するサーバだけ実行すればOKです。
$ sudo service drbd start

### 状態確認。 新しく追加された際は、syncが走ってるのを確認出来ます
$ drbd-overview

### ファイルシステムの作成
$ sudo mkfs.ext4 /dev/drbd_data

### マウント用ディレクトリ作成
$ sudo mkdir /data
$ chmod 777 /data

③Masterの新規構築の場合は、初回フル同期が必要(Slaveだけ作るときはいりません)

[Primary]
### Primary側から初回フル同期
$ drbdadm -- --overwrite-data-of-peer primary data

### UpToDateに変わってるか確認
$ drbd-overview

④Primary指定、マウント(Primaryサーバのみ)

[primaryサーバのみ]
### Primary指定する。
$ sudo drbdadm primary data 

### Primary/Secondaryになってるか確認
$ drbd-overview

[primaryのみ]
### /dev/drbd_dataを/dataにマウントする。fstabに書くと、マウント出来ないでOS起動しないパターンも出てくるので行わない
$ mount -t ext4 /dev/drbd_data /data

### lost+foundとかいうディレクトリが出来てる可能性があるので、消しましょう
$ sudo rm -rf /data/lost+found

切り替え手順

①Masterがrebootした場合

  • 再起動後、マウントするだけで正常な状態に戻ります
[Master]
$ drbd-overview
$ sudo drbdadm primary data
$ drbd-overview
$ mount -t ext4 /dev/drbd_data /data
$ ll/data

②Masterが起動しなくなった場合

  • SlaveをMasterに切り替えるため、サービス断発生します。
[Slave]
### マウントするだけで同期が走り、Masterにすることが可能。
$ drbd-overview
$ sudo drbdadm primary data
$ drbd-overview
$ mount -t ext4 /dev/drbd_data /data
$ ll /data

③Slaveがrebootした場合

  • 再起動し、drbdサービスが上がってくるだけで機能します。

④新しくSlaveを構築したい場合

  • この手順に沿って構築してあげてください
12
12
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
12
12