2GBのramdisk上にDRBDとOCFS2でActive/Active構成をやったメモ
OCFS2とDRBDのインストール。
aptitude install ocfs2-tools aptitude install drbd8-source module-assistant auto-install drbd8
一台でパッケージを作成すれば、あとは他のマシンにdebファイルをコピーすればよい。
dpkg -i drbd8-2.6.32-3-amd64_8.3.7-1+2.6.32-9_amd64.deb aptitude install
リソース定義ファイルの作成。
vi /etc/drbd.d/ram.res
resource ram0 { protocol C; startup { wfc-timeout 120; degr-wfc-timeout 120; become-primary-on both; } disk { on-io-error detach; } net { allow-two-primaries; after-sb-0pri discard-zero-changes; after-sb-1pri discard-secondary; after-sb-2pri disconnect; } on debian1{ device /dev/drbd0; disk /dev/ram0; address 192.168.1.71:7789; meta-disk internal; } on debian2 { device /dev/drbd0; disk /dev/ram0; address 192.168.1.72:7789; meta-disk internal; } }
drbdを開始。
modprobe brd rd_nr=1 rd_size=2048000 drbdadm create-md ram0 depmod -a /etc/init.d/drbd start
色々エラーと格闘した。
参考:福岡のプログラミング事情: clusterまでの道のり:drbd編
次はOCFSの設定。
vi /etc/ocfs2/cluster.conf
cluster: node_count = 2 name = ocfs2 node: ip_port = 7777 ip_address = 192.168.1.71 number = 0 name = host1 cluster = ocfs2 node: ip_port = 7777 ip_address = 192.168.1.72 number = 1 name = host2 cluster = ocfs2
dpkg-reconfigure ocfs2-tools/etc/init.d/o2cb online
ここまでは二つのノードで実行
どちらかのノードでファイルシステム作成。
mkfs.ocfs2 -N 2 /dev/drbd0
ファイルシステムのマウント。
echo "/dev/drbd0 /mnt/ocfs2 ocfs2 _netdev 0" >> /etc/fstab /etc/init.d/ocfs2 start
Active/Activeなので両方のノードでマウントできる。
# df -h Filesystem サイズ 使用 残り 使用% マウント位置 tmpfs 3.0G 0 3.0G 0% /lib/init/rw udev 10M 140K 9.9M 2% /dev tmpfs 3.0G 0 3.0G 0% /dev/shm rootfs 3.0G 944M 2.0G 32% / /dev/drbd0 2.0G 134M 1.9G 7% /mnt/ocfs2
設定ファイル参考:http://ogawashingo.com/?p=253