NFSサーバーのフェイルオーバー

  • 必要なもの

drbd
heartbeat
nfs

  • 設定

/etc/ha.d/README.config を見ると、
ha.cf
haresources
authkeys
の3つのファイルが必要。docディレクトリに
/usr/share/doc/heartbeat-2.0.7/ha.cf
/usr/share/doc/heartbeat-2.0.7/haresources
/usr/share/doc/heartbeat-2.0.7/authkeys

サンプルファイルがあるのでそれをコピーして編集する。
プライマリノード(web101)、セカンダリノード(web102)の両方にまったく同じものを置けばOK。

/etc/ha.d/ha.cf の設定例

#debugfile /var/log/ha-debug
logfile /var/log/ha-log
logfacility     local0
keepalive 2
deadtime 10
udpport 694
udp     eth1
auto_failback on
node web101.rukatan.com
node web102.rukatan.com

/etc/ha.d/haresources の設定例

web101.rukatan.com IPaddr::172.16.0.100/16/eth1 drbddisk Filesystem::/dev/drbd0::/mnt/disk nfs myprogram

上の設定の説明

web101.rukatan.com → このノードがプライマリ。
IPaddr::172.16.0.100/16/eth1 → eth1にIPアドレス172.16.0.100/16 を追加する。
drbddisk → drbdadmin primary all を実行する。
Filesystem::/dev/drbd0::/mnt/disk → mount /dev/drbd0 /mnt/disk を実行する。
nfs → service nfs start を実行する。
myprogram → /etc/ha.d/resources.d/myprogram を実行する。

/etc/ha.d/authkeys の設定例

auth 1
1 crc
#2 sha1 HI!
#3 md5 Hello!auth 1

CRCチェックのみ。

  • 起動
service heartbeat start