はじめに
- DRBDで対象ホストを追加したい・・・
まとめはこちら
【2023年05月版】Ubuntu22.04 上での DRBD によるストレージレプリケーション
前提条件
- 3台の ubuntu 22.04
- 2台の ubuntu 22.04 で、すでにDRBD稼働中、1台を追加
- Primary を node1 、Secndary を node2 とする
- 今回追加する Secondary を node3 とする
- Primary/Secondary 共に /dev/sda をシステム、/dev/sdb, /dev/sdc をストレージレプリケーションとして利用
- node1 の IPアドレスは 192.168.100.101 とする
- node2 の IPアドレスは 192.168.100.102 とする
- node2 の IPアドレスは 192.168.100.103 とする
- 既存デバイスは、/dev/drbd0, /dev/drbd1 とする
- 既存のマウント先は /export, /export2 とする
手順
既存の node1, node2
- 設定の追加
- 設定の読み込み
新規の node3
- DRBDのインストール
- 設定の作成
- メタデータの作成
- DRBD の開始
既存の node1
- Primary の決定 〜 自動的に同期
作業
既存の node1, node2 で作業
設定の追加
既存の設定ファイル
/etc/drbd.d/global_common.conf
global {
usage-count no;
}
common {
net {
protocol C;
}
}
/etc/drbd.d/r0.res
resource r0 {
volume 0 {
device /dev/drbd0;
disk /dev/sdb;
meta-disk internal;
}
volume 1 {
device /dev/drbd1;
disk /dev/sdc;
meta-disk internal;
}
on node1 {
address 192.168.100.101:7789;
}
on node2 {
address 192.168.100.102:7799;
}
}
ホストを追加した設定ファイル
/etc/drbd.d/r0.res
resource r0 {
volume 0 {
device /dev/drbd0;
disk /dev/sdb;
meta-disk internal;
}
volume 1 {
device /dev/drbd1;
disk /dev/sdc;
meta-disk internal;
}
on node1 {
node-id 0;
address 192.168.100.101:7789;
}
on node2 {
node-id 1;
address 192.168.100.102:7789;
}
on node3 {
node-id 2;
address 192.168.100.103:7809;
}
connection {
host node1;
host node2;
}
connection {
host node1;
host node3;
}
connection {
host node2;
host node3;
}
}
DRBD の設定ファイル変更の読み込み
- Primary/Secondary 共に
$ sudo drbdadm adjust r0
新規の node3 で作業
DRBD のインストール
$ sudo add-apt-repository ppa:linbit/linbit-drbd9-stack
$ sudo apt update
$ sudo apt install drbd-utils drbd-dkms
$ sudo modprobe drbd
$ cat /proc/drbd
version: 9.2.2 (api:2/proto:86-121)
GIT-hash: 8435da3ec2a0a70dee0fedf354276d6f1c6ba708 build by root@drbd1, 2023-05-26 13:01:35
Transports (api:18): tcp (9.2.2)
設定の作成
$ sudo tee /etc/drbd.d/global_common.conf <<EOF > /dev/null
global {
usage-count no;
}
common {
net {
protocol C;
}
}
EOF
$ sudo tee /etc/drbd.d/r0.res <<EOF > /dev/null
resource r0 {
volume 0 {
device /dev/drbd0;
disk /dev/sdb;
meta-disk internal;
}
volume 1 {
device /dev/drbd1;
disk /dev/sdc;
meta-disk internal;
}
on node1 {
node-id 0;
address 192.168.100.101:7789;
}
on node2 {
node-id 1;
address 192.168.100.102:7789;
}
on node3 {
node-id 2;
address 192.168.100.103:7809;
}
connection {
host node1;
host node2;
}
connection {
host node1;
host node3;
}
connection {
host node2;
host node3;
}
}
EOF
メタデータの作成
$ sudo drbdadm create-md r0
DRBDの開始
$ sudo drbdadm up r0
$ sudo drbdadm status r0
既存の node1 で作業
Primary 決定
$ sudo drbdadm primary r0
$ sudo drbdadm status r0
$ sudo mount /dev/drbd0 /export
$ sudo mount /dev/drbd0 /export2
さいごに
- かんたんでしたね