Heartbeat實現Web服務的高可用羣集

 Heartbeat實現Web服務的高可用羣集

   HA羣集模型如下:對外的vip192.168.2.1,處於活動狀態的web的主機名node1,處於備份狀態的web的主機名node2,當主狀態的web死掉,處於備份狀態的web立即變爲主狀態。以實現高可用性。(不考慮存儲)

Node1的配置

1、配置主機名和ip地址

2、編輯hosts文件,使主備之間能相互解析

192.168.2.100  node1.server1.com

192.168.2.200  node2.server2.com

3、上傳所需的heartbeat軟件包,並安裝

heartbeat-2.1.4-9.el5.i386.rpm

heartbeat-pils-2.1.4-10.el5.i386.rpm

heartbeat-stonith-2.1.4-10.el5.i386.rpm

libnet-1.1.4-3.el5.i386.rpm 

perl-MailTools-1.77-1.el5.noarch.rpm

yum localinstall heartbeat-2.1.4-9.el5.i386.rpm  heartbeat-pils-2.1.4-10.el5.i386.rpm heartbeat-stonith-2.1.4-10.el5.i386.rpm libnet-1.1.4-3.el5.i386.rpm perl-MailTools-1.77-1.el5.noarch.rpm -y --nogpgcheck

4、將心跳探測配置文件、資源管理配置文件、之間身份驗證配置文件拷貝到/etc/ha.d/目錄下

cd  /usr/share/doc/heartbeat-2.1.4/

cp ha.cf  authkeys haresources  /etc/ha.d/

5、編輯ha.cf插入如下

bcast    eth1     --心跳探測接口

node node1.server1.com   --兩個節點

node node2.server2.com 

6、編輯authkeys文件插入如下:

 auth 3     

 3 md5 adf25a5a79c3be8e1df5ff1ac64a21fc   --MD5的驗證類型 後面是是密鑰

chmod 600 authkeys

7、編輯haresources文件插入如下:

node1.server1.com   192.168.2.1/24/eth0   httpd (節點名稱(激活的)-------節點vip---腳本資源)

 

8、httpd的控制腳本拷貝到/etc/ha.d/resource.d/目錄下,將有heartbeat控制httpd服務

cd /etc/ha.d/resource.d/

cp /etc/init.d/httpd  ./

9、確保httpd現在是stop狀態,且開機不啓動,因爲他的控制權以後就交個了heartbeat,並啓動集羣heartbeat

啓動羣集後多了一個接口地址即vip

此時httpd也啓動了

node1.server1.com是處於活動狀態,下面的node2.server2.com就只能是處於備份狀態了,

將不會產生eth0:0接口,及httpd也處於stop狀態

Node2是配置

node11-9步)的配置基本完全相同,不在敘述

啓動node2.server2.com的羣集heartbeat

測試一下

活動狀態node1web

在一個client上長ping vip地址,並將node1.server1.com該爲備份狀態,看是否有丟包(在實際中你可以拔掉一根線)

這樣做

cd /usr/share/heartbeat/

./hb_standby   -----模擬失效

再測試一下

node2web,此時node2變成了活動狀態

如果node1再搶佔位活動狀態執行如下命令

cd /usr/share/heartbeat/

./hb_takeover

這個過程中ping沒有被中斷,高可用羣集保證了服務的不間斷。。。!!!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章