Heartbeatインストール

MySQL+DRBD+Heartbeatの環境を作ってみる。
DRBDはインストール済みの前提。
DRBDインストール - i2bsの日記

MySQLインストール(db1,db2)

apt-get update
apt-get install mysql-server mysql-client

文字コード、データディレクトリ設定(db1,db2)

vi /etc/mysql/my.cnf
[mysqld]
# 変更
datadir         = /data/mysql
# 追記
character-set-server = utf8
skip-character-set-client-handshake
collation-server = utf8_general_ci
init-connect = SET NAMES utf8

[mysql]
# 追記
default-character-set = utf8

MySQL停止、自動起動設定削除(db1,db2)

/etc/init.d/mysql stop
update-rc.d mysql remove
ls -l /etc/rc*.d/*mysql

drbd0マウント(db1)

drbdadm primary r0
mount /dev/drbd0 /data

MySQL初期設定(db1)

cp -rp /var/lib/mysql /data/.
/etc/init.d/mysql start
mysql_secure_installation

Heartbeatインストール(db1,db2)

apt-get update
apt-get install heartbeat

Heartbeat設定(db1,db2)

ファイルコピー
cp -p /usr/share/doc/heartbeat/authkeys /etc/ha.d/.
cp -p /usr/share/doc/heartbeat/ha.cf.gz /etc/ha.d/.
cp -p /usr/share/doc/heartbeat/haresources.gz /etc/ha.d/.
cd /etc/ha.d
gunzip ha.cf.gz
gunzip haresources.gz
chmod 600 authkeys

ha.cf

vi /etc/ha.d/ha.cf
logfile /var/log/ha-log
logfacility     local0
keepalive 2
deadtime 30
warntime 10
initdead 120

udpport 694
bcast eth1
# Primary
ucast eth0 172.16.0.201
# Secondary
#ucast eth0 172.16.0.200

auto_failback off

node db1
node db2

ping 172.16.0.231
respawn hacluster /usr/lib/heartbeat/ipfail
apiauth ipfail gid=haclient uid=hacluster
deadping 30

use_logd yes
haresources
vi haresources
db1 drbddisk::r0 Filesystem::/dev/drbd0::/data IPaddr::172.16.0.210 mysql
authkeys
vi authkeys
auth 1
1 crc

MySQL停止,DRBDセカンダリ可(db1)

/etc/init.d/mysql stop
umount /data
drbdadm secondary r0

Heartbeat起動(db1,db2)

/etc/init.d/heartbeat start

RDBの監視

RDBの監視はmonを入れるかスクリプト書けばok。