Linux集羣系列之十——高可用集羣之heartbeat安裝配置

rhel 5.8 32bit

heartbeat v2

 ha web

 node1 node2

  節點名稱, /etc/hosts

     節點名稱必須跟uname -n命令的直行結果一致


  ssh 互信通信,

  時間同步

1先配置兩個主機的ip 列如 192.168.1.11   192.168.1.12 VIP192.168.1.8  網關


192.168.1.1


   配置兩個主機的主機名#hostname node1.mylinux.com

                     #hostname node2.mylinux.com

    爲了讓主機名永久生效編輯 /etc/sysconfig/network

2 配置雙擊互信(在1.11上配置)

   #ssh-keygen -t rsa -f  ~/.ssh/id_rsa -P ''

   #ssh-copy-id -i .ssh/id_rsa.pub [email protected]

  在1.12上配置一樣

   #ssh-keygen -t rsa -f  ~/.ssh/id_rsa -P ''

   #ssh-copy-id -i .ssh/id_rsa.pub [email protected]


測試 在1.11上 #ssh 192.168.1.12 'ifconfig' 

測試 在1.12上 #ssh 1192.168.1.11 'ifconfig'

 

3 配置主機名稱解析分別在1.11和1.12上配置

# vim /etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4

::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.1.11  node1.mylinux.com node1

192.168.1.12  node2.mylinux.com node2

可以通過ping node2 和node1來測試解析是否正常

#scp /etc/hosts node2:/etc


iptables -L -n 確保沒有相關的限定或者打開UDP的694端口


4 時間同步(1.12上運行ntp服務)

ntpdata  192.168.1.13

或者直接手動同步 ntpdate 192.168.1.13

[root@localhost yum.repos.d]# which ntpdate

/usr/sbin/ntpdate

  crontab -e  每隔五分鐘同步一次

    */5 * * * *   /sbin/ntpdate 192.168.1.13 &> /dev/null

scp /var/spool/cron/root node2:/var/spool/cron/


kz


http://www.linux-ha.org/wiki/Heartbeat

http://clusterlabs.org/


epel:

https://fedoraproject.org/wiki/Special:RecentChanges


heartbeat-2.1.4-11.el5.i386.rpm   核心包                                       

heartbeat-devel-2.1.4-11.el5.i386.rpm  開發包                                  

heartbeat-gui-2.1.4-11.el5.i386.rpm  圖形界面用於管理hearbeat集羣 

heartbeat-ldirectord-2.1.4-11.el5.i386.rpm  爲ipvs高可用提供規則自動生成,即後


端realserver健康狀態檢查的組件                           

heartbeat-pils-2.1.4-11.el5.i386.rpm 裝載庫的插件 

heartbeat-stonith-2.1.4-11.el5.i386.rpm  用於修改報頭的接口

[1.11]

安裝之前必須先安裝這2個包

libnet-1.1.6-7.el5.i386

perl-MailTools-1.77-1.el5.noarch


#yum --nogpgcheck localinstall perl-MailTools-1.77-1.el5.noarch

#yum --nogpgcheck localinstall libnet-1.1.6-7.el5.i386

#yum --nogpgcheck localinstall heartbeat-2.1.4-11.el5.i386.rpm

#yum --nogpgcheck localinstall heartbeat-gui-2.1.4-11.el5.i386.rpm

#yum --nogpgcheck localinstall heartbeat-pils-2.1.4-11.el5.i386.rpm

#yum --nogpgcheck localinstall heartbeat-stonith-2.1.4-11.el5.i386.rpm

#scp perl-MailTools-1.77-1.el5.noarch libnet-1.1.6-7.el5.i386 heartbeat-2.1.4


-11.el5.i386.rpm heartbeat-gui-2.1.4-11.el5.i386.rpm heartbeat-pils-2.1.4-


11.el5.i386.rpm heartbeat-stonith-2.1.4-11.el5.i386.rpm node2:/root/


[1.12]

#yum --nogpgcheck localinstall perl-MailTools-1.77-1.el5.noarch

#yum --nogpgcheck localinstall libnet-1.1.6-7.el5.i386

#yum --nogpgcheck localinstall heartbeat-2.1.4-11.el5.i386.rpm

#yum --nogpgcheck localinstall heartbeat-gui-2.1.4-11.el5.i386.rpm

#yum --nogpgcheck localinstall heartbeat-pils-2.1.4-11.el5.i386.rpm

#yum --nogpgcheck localinstall heartbeat-stonith-2.1.4-11.el5.i386.rpm


/etc/ha.d/resource.d/IPaddr專門用於實現將VIP配置到某個活動節點上,並且監控IP是


否生效


#cd /etc/ha.d


三個配置文件

1.密鑰文件,600權限,authkeys

2.heratbeat服務的配置文件 ha.cf

3.資源管理配置文件

  haresources

#ls /usr/share/doc/heartbeat-2.1.4

#cp -p /usr/share/doc/heartbeat-2.1.4/{authkeys,ha.cf,haresources} ./

#dd if=/dev/random count=1 bs=612 |md5sum 生成隨機數


定義主配置文件

#vim authkeys

   auth 1

1 md5 【隨機數】

#vim ha.cf

   #debugfile /var/log/ha-debug 調試日誌

   logfile /var/log/heartbeat.log 日誌文件

   #logfacility  local0 日誌的設施

   keepalive 2    兩秒發一次心跳信息

   deadtime 30 死亡時間,探測多少時間後確定爲死亡

   warntime 10 警告時長 

   initdead 120 第一個節點啓動以後等待第二個節點啓動,的等待時間(至少要2個節點


才能組成集羣)

   udpport 694 心跳信息傳遞端口

   baud 19200 串行線發送速率是多少

   bcast eth0 定義廣播

   #mcast 組播

   #ucast 單播

node 指定當前集羣有幾個節點,每個節點用一個node去指定

   node  node1.mylinux.com

   node  node2.mylinux.com

   

   ping 192.168.1.1  通過網關來檢測自己是否正常

   #respawn hacluster 服務蕩掉多久重啓服務

   #compression bz2 是否壓縮日誌

   #compression_threshold 2    大於2k壓縮




定義資源 /etc/ha.d/resource.d/Filesystem 資源代理


 

[1.11]

yum install httpd

echo "<h1>node1.mylinux.com</h1>" >> /var/www/html/index.html

service httpd start

測試

service httpd stop

chkconfig httpd off

[1.12]

yum -y install httpd

echo "<h1>node2.mylinux.com</h1>" >> /var/www/html/index.html

service httpd start

測試

service httpd stop

chkconfig httpd off


[1.11]

#cd /etc/ha.d

#vim haresources

   node1.mylinux.com     IPaddr::192.168.1.8/24/eth0 httpd

#scp -p  authkeys haresources ha.cf node2:/etc/ha.d/

#service heratbeat start

#ssh node2 'service heartbeat start'


cd /usr/lib/heartbeat

./hb_standby 把自己轉換成備節點進行測試

[1.12]

ifconfig   

netstat -tnlp 此時檢查80端口是否啓用


[1.14]

ifconfig lo:0 down

ifconfig eth0 192.168.1.14/24

echo 0 > /proc/sys/net/ipv4/conf/eth0/arp_ignore

echo 0 > /proc/sys/net/ipv4/conf/eth0/arp_announce

echo 0 > /proc/sys/net/ipv4/conf/all/arp_announce

echo 0 > /proc/sys/net/ipv4/conf/all/arp_ignore

#mkdir /web/htdocs -pv 建立一個文件夾 並且共享出去

vim /etc/exports 

   /web/htdocs  192.168.1.0/255.255.255.0(ro)

vim /web/htdocs/index.html

  nfs server

#service nfs start

service portmap restart


[1.11]

#ssh node2 '/etc/init.d/heratbeat stop'

#service hearbeat stop

#setenforce 0

#mount 192.168.1.14:/web/htdocs  /mnt

#ls /mnt

#umount /mnt

#vim /etc/ha.d/haresources

   node1.mylinux.com IPaddr::192.168.1.8/24/eth0 


Filesystem::192.168.1.14:/web/htdocs::/var/www/html::nfs httpd


#scp haresources node2:/etc/ha.d/

#sercice heartbeat start

#ssh node2 'service heartbeat start'

#/usr/lib/heartbeat/hb_standby讓主節點成爲備節點進行測試




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