== drbd == yum -y install drbd82 kmod-drbd82 shutdown -r now DRBDのデータ用領域作成 fdisk /dev/hda2 n p 1 w DRBDの外部メタデーター領域作成 fdisk /dev/hda3 n p 1 w [root@test2 ha.d]# cat /etc/drbd.conf #global { usage-count yes; } common { syncer { rate 100M; al-extents 257; } } resource r0 { protocol C; startup{ degr-wfc-timeout 60; wfc-timeout 30; } net { cram-hmac-alg sha1; shared-secret "FooFunFactory"; after-sb-0pri discard-younger-primary; after-sb-1pri discard-secondary; after-sb-2pri disconnect; } on test1.local{ device /dev/drbd0; disk /dev/hda2; address 192.168.20.122:7788; meta-disk /dev/hda3 [0]; } on test2.local { device /dev/drbd0; disk /dev/hda2; address 192.168.20.123:7788; meta-disk /dev/hda3 [0]; } } DRBDメタデータ DRBDメタデータは、データ自体を格納するブロックデバイスの内部に置くか、データとは別のブロックデバイスに置くかを選択可能。 バージョン0.7までは、メタデータの必要サイズはデータ用領域サイズに関係なく一律128MB。 バージョン8では、次のテーブルを参考にしてメタデータの推定サイズを選べる。 http://www.drbd.org/users-guide/ch-internals.html ブロックデバイスのサイズ DRBDメタデータのサイズ 1 GB         2 MB 100 GB         5 MB 1 TB         33 MB 4 TB         128 MB DRBDメタデータが既存データ領域を壊さないよう注意する必要がある。外部データーとしておくことを進める。 スプリット after-sb-0pri discard-younger-primary; after-sb-1pri discard-secondary; after-sb-2pri disconnect; http://www.drbd.jp/documentation/drbdsetup.html drbdadm create-md r0を実行して作成 DRBDのプロセスを立ち上げて以下のエラーが出た場合は *********** ERROR ************* [root@test2 ~]# drbdadm create-md r0 v08 Magic number not found md_offset 134217728 al_offset 134221824 bm_offset 134254592 Found ext3 filesystem This would corrupt existing data. If you want me to do this, you need to zero out the first part of the device (destroy the content). You should be very sure that you mean it. Operation refused. Command 'drbdmeta /dev/drbd0 v08 /dev/hda3 1 create-md' terminated with exit code 40 drbdadm aborting ******************************* メタデーターを作り直し再度行う dd if=/dev/zero of=/dev/hda3 bs=1M count=1000 drbdadm create-md r0 service drbd start drbdadm create-md r0 drbdadm -- --overwrite-data-of-peer primary r0 mkfs.ext3 /dev/drbd0 以下のようにDRBDができているか確認 on test1.local mkdir /data mount /dev/drbd0 /data touch /data/test umount /data drbdadm secondary r0 on test2.local drbdadm primary r0 mkdir /data mount /dev/brbd0 /data ls /data == Install MySQL == yum -y install mysql vi my.cnf [mysqld] datadir=/data/mysql chkconfig --del mysqld service mysqld start == Install 2回yumを実行 yum -y install heartbeat yum -y install heartbeat cp /usr/share/doc/heartbeat-2.1.3/ha.cf /etc/ha.d/. cp /usr/share/doc/heartbeat-2.1.3/haresources /etc/ha.d/. cp /usr/share/doc/heartbeat-2.1.3/authkeys /etc/ha.d/. [# test1] vi /etc/ha.d/ha.cf logfacility local0 ucast eth1 10.0.0.2          #<----- other server's IP auto_failback on node test1.local node test2.local ping 192.168.20.121           #<---- VIP [# test2] vi /etc/ha.d/ha.cf logfacility local0 ucast eth1 10.0.0.1 #<------- other server's IP auto_failback on node test1.local node test2.local ping 192.168.20.121 #<----- VIP chmod 600 /etc/ha.d/authkeys vi /etc/ha.d/authkeys auth 1 1 crc 以下のtest1.localはプライマリーにするサーバーを設定 vi /etc/ha.d/haresources test1.local IPaddr::192.168.20.121/24/eth0 drbddiskFilesystem::/dev/drbd0::/data::ext3 mysqld /etc/rc.d/init.d/heartbeat start