編集してHeart beatをインストールし、利用可能なクラスタを構築する。


環境
OS:Redhat 5.4
Virtual Box:3.2.8
Heart Beat:2.1.4
Nodeの数:2
ソースコードのインストール
Heartbeatはlibnetというパッケージに依存しています。このパッケージはシステムに収録されていません。手作業でインストールする必要があります。
ダウンロード先:
http://linux.softpedia.com/get/Programming/Libraries/Libnet-10275.shtml
これはコンパイルインストールに必要なパッケージです。
glib 2-devel
python-devel
pam-devel
e 2 fsprogs-devel
uuid library
bzip 2
libxml-devel
gntls-devel
 
ヽoo。ツ
heart beatユーザーとグループ
 
葃コンパイルはHeart beatをインストールします。
tar xvjf Heart beat-Start BLE-2-1-StTABL E-2.1.4.tar.bz 2-C/uscal/src/
cd/usr/local/src/Heart beat-StTABL E-2-1-StTABL E-2.1.4/
./ConfigreMe configure
make&make install
heartbeat 1.Xと2.Xのプロファイルの違い
/etc/ha.d/authkeysこのファイルは2つのバージョンで機能が全く同じで、設定が必要であり、各ノードの内容が同じであることを保証します。etc/ha.d/ha.cfこれは主な構成ファイルです。v 1またはv 2 styleフォーマット/etc/ha.d/harsourcesはv 1のリソースプロファイル/var/lib/heartbeat/crm/cib.xmlはv 2のリソースプロファイルです。両方はha.cfの設定によって一つしか選択できません。
 
/etc/ha.d/ha.cfこのファイルはheartbeatの主な配置ファイルです。
これは注釈がない行です。つまり配置が必要です。
debugfile/var/log/ha-debug
logfile/var/log/ha-log
logfacility     local 0
システムログの情報範囲を設定します。
local 0
keepalive 2
心拍の検出時間を設定します。標準単位は秒です。
deadtime 30
ノードの死亡宣言時間は、単位が秒です。
warntime 10                  
これにより判定ノードの死亡時間を調整する。
initdead 120
Heart beat起動リソースの待ち時間は、単位が秒です。
upport 694
bcastとucast通信用のポートを設定し、デフォルトはUDP 694です。
ucast eth 1 10.10.2
心拍ネットカードと相手のipアドレス
autofailback on
この設定はノードに優先度を持たせます。サービスが準備機に運行されている場合、
メインノードが回復したら、自動的にスペアマシンで動作するサービスを取り戻します。
node    heart beat-1.site heart beat-2.site
ノード情報
ping  192.168.1.1
pingノードを指定して、ネットワーク状態を検出します。通常はゲートウェイです。
repawn hacluster/usr/lib/heartbeat/ipfail
設定
Heart beat監視サービスは、Heart beatサービスの起動時に起動し、停止時に一斉に停止します。予期せぬ事故によりサービスが停止した場合、Heart beatは自動的にサービスを再開します。
レスパwn hacluster    /usr/lib/heart beat/pingd-m 100-d 5 s
ハートビート  Version 1.X.Xはipfailを使いますが、2.Xはpingdを使います。
appiauth ipfail gid=haclient uid=hacluster
クライアント
APIアクセス制御。ここでipfailを実行するユーザとユーザグループを指定します。
aping gid=haclient uid=hacluster
apingd gid=haclient uid=hacluster
グラム  レスパス
crm管理をサポートします
 
グループリソースファイル
hareesourceまたはcib.xml
hareesource形式は比較的簡単で、直接編集できますが、cib.xml形式は複雑です。GUIインターフェースまたはツールでV 1ファイルを変換したほうがいいです。
これは
V 1.Xのhttpdリソースの一例では、このipは資源のipであり、もし資源がnode 1にあるならば、ネットカードは仮想的に1つのネットカードを作り出し、IPはこのIPである。
heartbeat-1 IPaddr:192.168.228 htpd mysql
heart beatは資源のマスターノードである。
クラスタが実現する必要があるなら
Active-Active(相互準備)の状態であれば、もう一行書いてもいいですが、TOEICの応用は衝突しません。
cib.xmlファイルの編集方法
1人工XMLファイルを作成する;2 admintoolsツールを使って、それはすでにheart beatカバンの中に含まれています。3 GUIグラフィックスツールを使って配置して、heart beat-guiバッグの中にも含まれます。4 pythonスクリプトを使用して、1.xスタイルのフォーマット設定ファイルを変換します。
 
authkeysプロファイル
このファイルはクラスタ内の各ノードが相互認証したプロファイルです。
crc(明文)、md 5、shar 1などの異なる検証方法は、heartbeatが持参した例を使って修正できます。
!ファイルの権限は
600,
auth 2 crc 2 shar 1 HI!3 md 5ハロー
各検証方式によって消費されるシステム資源も違っています。性能の安全バランスをみてください。
最後にまた
heart beatをシステムサービスに追加します。
chkconfig、Cadd heart beat
chkconfig  --level 2354 heart beat on
私がheart beatのサービスを開始した時、このようなミスに遭いました。
 

  
  
  
  
  1. [root@heartbeat-1 ha.d]# /etc/init.d/heartbeat start 
  2. logd is already running 
  3. Starting High-Availability services: 
  4. 2010/10/16_01:43:54 INFO:  Resource is stopped 
  5.                                                            [FAILED] 
  6. heartbeat[3208]: 2010/10/16_01:43:54 WARN: heartbeat: udp port 1694 reserved for service "rrimwm". 
  7. heartbeat: udpport setting must precede media statementsheartbeat[3208]: 2010/10/16_01:43:54 info: Version 2 support: resppawn 
  8. heartbeat[3208]: 2010/10/16_01:43:54 ERROR: Heartbeat not started: configuration error. 
  9. heartbeat[3208]: 2010/10/16_01:43:54 ERROR: Configuration error, heartbeat not started. 
1694は私自身が修正したもので、これは大きな問題ではなく、主にudport setting must precedie media statements heart beat[3208]です。
サービスはいつも起動に失敗しました。最後に原因を究明しました。authkeysファイルの問題です。2つのノードのこのファイルは違っています。このファイルはscpでコピーしてください。手作業で修正したら問題があるかもしれません。私は手作業で修正しました。長い間苦労しました。
 
 
Heart Beatの原理について紹介しますので、ご参考ください。
http://www.linuxfly.org/