heartbeatのインストール時エラーの回避方法
heartbeatのインストール時にエラーになる件は、一旦heartbeat-pilsとheartbeat-stonithを入れてからheartbeatを入れれば回避できるとのこと。
sudo yum install heartbeat-pils heartbeat-stonith sudo yum install heartbeat
参考:ベリラボ - wiki - CentOS52_heardbeatインストール、初期設定
/etc/ha.d/haresources
以下のようにネットワークアドレスのビット数やデバイスも指定可能。詳しくはサンプルファイル(/usr/share/doc/heartbeat-2.1.3/haresources)参照。vm1 IPaddr::192.168.101.20/24/eth0
なお、このIPaddrは/etc/ha.d/resource.d/に置かれているスクリプト名で、手動でも実行可能です。
手動VIP追加
sudo /etc/ha.d/resource.d/IPaddr 192.168.101.20/24/eth0 start手動VIP削除
sudo /etc/ha.d/resource.d/IPaddr 192.168.101.20/24/eth0 stop
ERROR: Setup problem: Couldn't find utility /bin/gawkの対処法
CentOSをインストール時にBaseのチェックもはずして最小構成にした場合の話です。heartbeatの実行中に/var/log/ha-logに以下のエラーが発生しました。
ResourceManager[2873][2943]: 2010/12/13_16:08:00 info: Running /etc/ha.d/resource.d/IPaddr 192.168.101.20 start IPaddr[2962][2976]: 2010/12/13_16:08:00 ERROR: Setup problem: Couldn't find utility /bin/gawk IPaddr[2945][2977]: 2010/12/13_16:08:00 ERROR: Program is not installed R
gawkが無いとインストールしようとしましたが、すでに入っていました。
ググるとこちらに対処法が載ってました。
VIP not appearing when heartbeat starts | Linux-HA | Users
whichをインストールすれば解決します。
sudo yum install which
実験用監視スクリプト
#!/bin/sh url=http://192.168.101.20/ timeout=2 while : do response=`curl -s -S --connect-timeout $timeout $url` if [ $? -ne 0 ] then break fi echo "`date +%Y-%m-%dT%k:%M:%S` $response" sleep 1 done