本文系統centos6.0
目的:兩個機器的httpd服務提供一樣的服務,使用heartbeat實作httpd的熱備,為了統一管理資源(不然需要兩台服務上都寫入配置),後面挂一台機器,提供nfs服務;友善管理。
lv1:192.168.182.130
lv2:192.168.182.129
vip:192.168.182.200
nfsserver:192.168.182.131
1、首先在lv1、lv2上:
配置hosts
啟動httpd服務,分别在兩台機器的Index.html做差別,比如分别顯示lv1、lv2
2、接下來安裝heartbeat;
yum install heartbeat libnet
1>cp /usr/share/doc/heartbeat-3.0.4/authkeys ha.cf haresources /etc/ha.d/
配置ha.cf
logfile /var/log/ha-log
logfacility local0
keepalive 2
deadtime 10
warntime 5
initdead 120
udpport 694
bcast eth0
auto_failback on
node lv1
node lv2
ping 192.168.182.2 #網關
ping_group group1 192.168.182.130 192.168.182.129
respawn hacluster /usr/lib/heartbeat/ipfail
配置 authkeys
auth 1
1 crc
#2 sha1 HI!
#3 md5 Hello!
配置haresources
lv1 IPaddr::192.168.182.200/32/eth0:0 httpd
2>将上面3個配置檔案scp到lv2
chmod 600 authkeys
scp ha.cf haresources authkeys root@lv2:/etc/ha.d/
3>分别啟動httpd進行驗證;
lv1:/etc/init.d/httpd start
lv2:/etc/init.d/httpd start
分别啟動heartbeat
lv1:/etc/init.d/heartbeat start
lv2:同上
這時你會發現lv1的eth0:0網卡
httpd、heartbeat服務狀況
現在去通路192.168.182.200
證明是lv1是提供服務
我們把lv1上的heartbeat服務停掉
你會發現lv1上的eth0:0網卡不見了,而漂移到了lv2上
當你在通路192.168.182.200的時候,發現
證明現在是lv2在提供服務
3、開始在第三台機器nfsserver開啟nfs
1>、yum install nfs rpcbind
/etc/init.d/nfs start
mkdir /root/data
vim /etc/exports
/root/data *(rw)
exportfs -r
2、随便一台機器測試是否正常mount
lv1測試:
說明測試正常
umount 掉 umount /mnt
分别在lv1、lv2上修改haresources
lv1 IPaddr::192.168.182.200/32/eth0:0 Filesystem::192.168.182.131:/root/data::/var/www/html::nfs httpd
分别在lv1、lv2分别啟動httpd、heartbeat
在lv1上mount下發現
2>、在nfsserver上/root/data下建立一個test檔案
vim index.html
test
發現測試正常
4、測試nfs是否和lv兩台伺服器連結正常
lv1上停掉heartbeat /etc/init.d/heartbeat stop
在lv2上mount 下發現
說明連結正常
lv2 ifconfig eth0:0
nfsserver
test\test
測試發現OK!!!
到現在為止,一切OK
隻修改nfsserver上的index.html 即可,便于管理;
本文轉自 西索oO 51CTO部落格,原文連結:http://blog.51cto.com/lansgg/1203542