搭建基於Heartbeat v2+NFS的高可用Web集羣

1、實驗環境

HA1:192.168.1.17(RHEL5.8_32bit,web server)

HA2:192.168.1.18(RHEL5.8_32bit,web server)

NFS:192.168.1.19(RHEL5.8_32bit,nfs server)

VIP:192.168.1.20


2、準備工作

<1> 配置主機名

節點名稱使用/etc/hosts解析;節點名稱必須跟uname -n命令的執行結果一致

HA1:

# hostname node1.ikki.com
# vim /etc/sysconfig/network
HOSTNAME=node1.ikki.com

HA2:

# hostname node1.ikki.com
# vim /etc/sysconfig/network
HOSTNAME=node2.ikki.com

<2> 配置節點ssh基於密鑰方式互相通信

HA1:

# ssh-keygen -t rsa -f ~/.ssh/id_rsa -P ''
# ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]

HA2:

# ssh-keygen -t rsa -f ~/.ssh/id_rsa -P ''
# ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]

<3> 配置各節點基於主機名互相通信

HA1&HA2:

# vim /etc/hosts
192.168.1.17    node1.ikki.com  node1
192.168.1.18    node2.ikki.com  node2

<4> 配置各節點時間同步

HA1&HA2:

# crontab -e
*/5 * * * *     /sbin/ntpdate 202.120.2.101 &> /dev/null


3、安裝Heartbeat v2

# yum --nogpgcheck localinstall perl-MailTools-1.77-1.el5.noarch.rpm
#yum--nogpgchecklocalinstall heartbeat-2.1.4-9.el5.i386.rpm heartbeat-gui-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


4、配置Heartbeat v2(各個節點)

# cd /etc/ha.d/
# cp /usr/share/doc/heartbeat-2.1.4/{authkeys,ha.cf,haresources} ./
# chmod 600 authkeys

<1> 配置authkeys

生成隨機數:

# dd if=/dev/random count=1 bs=512 | md5sum
# vim authkeys
auth 1
1 md5 cbe6411e54d9bfbeef9cc1c48c7234fa

<2> 配置ha.cf

# vim ha.cf
keepalive 1                        # 設置1秒檢測一次心跳
mcast eth0 225.0.100.19 694 1 0    # 設置心跳信息傳遞方式爲多播
node    node1.ikki.com             # 設置各個節點名稱
node    node2.ikki.com
ping 192.168.1.1                   # 使用ping通網關來判斷存活狀態

<3> 配置haresources(設置VIP和主節點服務)

# vim haresources
node1.ikki.com IPaddr::192.168.1.20/24/eth0 httpd

注意以上資源的順序排列(當前資源:VIP、httpd)


5、配置WEB服務(各個節點)

# echo "<h1>node1.ikki.com<h1>" >> /var/www/html/index.html
# service httpd stop
# chkconfig httpd off


6、啓動Heartbeat v2服務(在主節點HA1上啓動服務並遠程啓動HA2上的服務)

HA1:

# service heartbeat start
# ssh node2 'service heartbeat start'


7、測試

訪問http://192.168.1.20/

使用hb_standby將HA1設置爲備節點進行調試:

# /usr/lib/heartbeat/hb_standby


8、搭建NFS服務(用於各節點掛載web目錄)

NFS:

# vim /etc/exports
/web/htdocs     192.168.1.0/24(ro)
# service nfs start
# showmount -e 192.168.1.19
# mkdir -p /web/htdocs
# echo "<h1>nfs server<h1>" > /web/htdocs/index.html


9、停止Heartbeat v2服務並配置haresources(各個節點)

# service heartbeat stop
# ssh node2 'service heartbeat stop'
# vim /etc/ha.d/haresources
node1.ikki.com IPaddr::192.168.1.20/24/eth0 Filesystem::192.168.1.19:/web/htdocs::/var/www/html::nfs httpd

注意以上資源的順序排列(當前資源:VIP、Filesystem、httpd)


10、啓動Heartbeat v2服務並測試

HA1:

# service heartbeat start
# ssh node2 'service heartbeat start'

訪問http://192.168.1.20/


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