高可用集羣 heartbeatv1實例

 

                ———————   高可用集羣的簡單配置   ————————

 地址規劃  

           主節點:HA1 172.16.21.13   hostname node2.magedu.com

           備節點: HA2 172.16.21.14   hostname node1.magedu.com

           VIP 172.16.21.9

 

 前提工作

        1,配置主機名 hostname

           保證uname -n 的主機名一致

           #hostname node1.magedu.com  (vim /etc/sysconfig/network)

 

       2,雙機互信通信 (HA1HA2都做相同的設置,以實現雙機的互信)

           #ssh-keygen -t rsa -f ~/.ssh/id_rsa -P '' 生成密鑰輸出文件存放在id

           #ssh-copy-id -i .ssh/id_rsa.pub root@(ip) 

 

       3,主機名稱解析

           #vim /etc/hosts   添加兩臺主機的IP 和主機名稱,還有別名

                         

       4,時間同步(爲了監控到對方的心跳信息)

          #service ntpd stop

          #chkconfig ntpd off

          #ntpdate 172.16.0.1

               爲了保證以後時間能一直的同步(很粗暴,設定5分鐘同步一次)

         (#crontab -e  添加*/5* * * * /sbin/ntpdate 172.16.0.1 &> /dev/null)

 

 

 

安裝相關的軟件 

     (可以到相關的網站去下載需要的軟件包,因爲有很多依賴關係,所以需要下載多個)

       heartbeat-2.1.4-9.el5.i386.rpm,  heartbeat-gui-2.1.4-9.el5.i386.rpm

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

       heartbeat-pils-2.1.4-10.el5.i386.rpm libnet-1.1.4-3.el5.i386.rpm

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

 

 

啓動heartbeat,並對其做出相關的配置

      首先爲其提供配置文件  (路徑在/etc/ha.d

             (/usr/share/doc/heartbeat-2.1.4/下有三種配置文件的樣例)

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

      指定密碼使用哪種認證機制:

          ha.d#vim authkeys       

         得到隨機數 將其加入到authkeys

       # dd if=/dev/random count=1 bs=512 | md5sum    

     

    編輯主配置文件

             ha.d#vim ha.cf

          在其中修改以太網發送信息是通過廣播(心跳信息的傳遞方式)

          定義節點,將集羣中的節點都做出定義

          ping 網關 目的是驗證對方是否down掉沒

 

    

      安裝web服務

 

    

       編輯配置定義資源

             ha.d#vim haresources

               格式: #node1  10.0.0.170 Filesystem::/dev/sda1::/data1::ext2

                和主節點名稱一致uname -n 作爲主節點的節點名稱

    將配置好的密鑰和資源文件複製到做備用節點的主機上

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

           在主節點(HA1)上啓動自身的heartbeat ,並且啓動備節點的heartbeat

 

   實驗結果

 

 

 

通過以下了兩個場景,我們可以對高可用集羣的heartbeat v1 做進一步的瞭解

     

    

      場景1:主節點出現故障,備節點取代主節點工作

           期望的效果:能顯示HA2httpd的網頁(node2.magedu.com)

 

 heartdbeat下有個測試腳本,可以完成上面的場景

     #cd /usr/lib/heartbeat

        它下面有個腳本hb_standby (將自己轉換成備節點)  

     #./hb_standby

 

 

ifconfig查看,會發現eth0:0在之前的節點上

 

期望效果顯示

 

    場景2: 再添加一個節點,讓其提供文件系統,讓主備節點同時掛載它

           期望效果:提供相同的網頁

          

             在做共享文件系統NFS的節點上做如下配置

                 

         創建共享的文件目錄

                #mkdir -pv /web/htdocs

        編輯共享的目錄和共享的網段

                #vim  /etc/exports

                  /web/htdocs 172.16.0.0/255.255.0.0(ro)

        檢查下是否能正常的訪問

               #showmount -e 172.16.21.8

             

          

     把主備節點的heratbeat停了

 

                    在主配置文件的資源管理中做出配置

     node1.magedu.com IPaddr::172.16.21.9/16/eth0 Filesystem::172.16.21.8:/web/htdocs::/var/www/html::nfs httpd

 

 

   並將配置好的複製到備節點上 

 

 

    啓動服務,查看結果

          # service heartbeat start

          # ssh node2 'service heartbeat start'

 

 

   

 

 

 

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