heartbeat高可用集羣搭建

 

實驗平臺:virtualbox 4.12

操作系統:RHEL5.4
實驗拓撲:

    兩臺Directory都有兩塊網卡,都設置爲靜態地址,其中eth0用於網絡間通信,eth1用於兩臺Directory監測彼此心跳信息,所以使用獨立的網絡進行連接,在實際應用中可以使用串行線進行連接,這裏由於使用虛擬機就採用intnet的內部網予以實現。
    本實驗用到的軟件包有:
    

 

  1. heartbeat-2.1.4-9.el5.i386.rpm   
  2. heartbeat-devel-2.1.4-9.el5.i386.rpm   
  3. heartbeat-gui-2.1.4-9.el5.i386.rpm  
  4. heartbeat-pils-2.1.4-10.el5.i386.rpm  
  5. heartbeat-stonith-2.1.4-10.el5.i386.rpm  
  6. libnet-1.1.4-3.el5.i386.rpm  
   
一.首先安裝軟件包
   

 

  1. [root@DIR ~]# yum localinstall *.rpm --nogpgcheck -y  
    按照拓撲圖設置兩臺主機的IP地址和主機名
    分別修改兩主機/etc/hosts文件,添加下面的內容
       

 

  1. 192.168.56.10   node1.a.org node1  
  2. 192.168.56.30   node2.a.org node2  
 
    爲兩主機設置免密碼ssh連接
    首先在node1上:
           

 

  1. [root@DIR ~]# ssh-keygen -t rsa  
  2. [root@DIR ~]# ssh-copy-id -i .ssh/id_rsa.pub root@node2  
    再在node2上:
          

 

  1. [root@DIR2 ~]# ssh-keygen -t rsa  
  2. [root@DIR2 ~]# ssh-copy-id -i .ssh/id_rsa.pub root@node1  
    這樣就可以免輸密碼自由連接了。
    可以將node1上的軟件包直接拷貝至node2上進行安裝:
   

    然後同樣的安裝步驟:
    

 

  1. [root@DIR2 ~]# yum localinstall -y *.rpm –nogpgcheck  
    準備工作基本結束,下面開始進行配置
二.配置Heartbeat
    1.將heartbeat的配置文件拷貝到/etc/ha.d目錄下
    

 

  1. [root@node1 ~]# cp /usr/share/doc/heartbeat-2.1.4/{ha.cf,haresources,authkeys} /etc/ha.d/  
    2.首先編輯ha.cf
   

 

  1. [root@node1 ha.d]# cd /etc/ha.d/  
  2. [root@node1 ha.d]# vim ha.cf  
    修改下面幾項:
       

 

  1. logfile /var/log/ha-log     //打開日誌  
  2. bcast eth1               //監測心跳的網卡  
  3. node   node1.a.org  
  4. node   node2.a.org       //定義集羣節點  
  5. respawn hacluster /usr/local/lib64/heartbeat/ipfail  
  6. apiauth ipfail gid=haclient uid=hacluster        //定義隨heartbeat一起啓動的進程  
    3.然後編輯authkeys
    

 

  1. [root@node1 ha.d]# vim authkeys 
    修改文件最後幾行爲
          

 

  1.  auth 2               //這裏是用來指定認證方式的  
  2. 2 sha1 e781edf0090887bee14405fd48768ac6(隨機數)  
  3.     //隨機數可以用下面的命令生成  
  4. [root@node1 ~]# dd if=/dev//urandom bs=512 count=1 | md5sum   
  5. [root@node1 ha.d]# chmod 400 authkeys     //修改該文件的權限爲400或600  
    4.接下來編輯haresources
    

 

  1. [root@node1 ha.d]# vim haresources  
  2.     //在其中寫入:  
  3. node1.a.org 192.168.56.20/24/eth0/192.168.56.255 httpd  
    這條語句分別用來定義主節點,VIP,指定網卡,廣播地址和服務
    5.拷貝配置文件至node2
    由於兩臺主機的配置文件必須相同,這裏直接將node1上編輯好的配置文件拷貝至node2
   

 

  1. [root@node1 ha.d]# scp ha.cf haresources authkeys node2:/etc/ha.d 
 
三.啓動服務進行測試
    爲了驗證效過,在node1和node2上分別安裝httpd服務,並添加測試頁。
    啓動集羣服務
   

 

  1. [root@node1 ~]# /etc/init.d/heartbeat start  
  2. [root@node1 ~]# ssh node2 -- `/etc/init.d/heartbeat start`  
  3. [root@node1 ~]# service heartbeat status  //查看一下heartbeat運行狀態  
  4.     

 

    說明服務運行正常
    查看ip地址
    [root@node1 ~]# ifconfig
 

    此時在瀏覽器內出入192.168.56.20(VIP)可以看到 

 再停掉node1上的heartbeat,看一下服務狀態
   

 

  1. [root@node1 ~]# service heartbeat stop  
  2. [root@node2 ha.d]# service heartbeat status  
  3. [root@node1 ~]# ifconfig   

    刷新頁面可以看到
 

 可見heartbeat工作正常,高可用集羣搭建成功!
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章