歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> Linux服務器

在linux系統用heartbeat實現雙機熱備

一:安裝兩個linux(rh4.5-32位)系統並關閉防火牆,selinux設置為disable,每台電腦需要配置兩塊網卡。兩台電腦分別為node1和node2

    node1的ip地址分別為:
    eth0:192.168.0.65
    eth1:10.0.0.3 (心跳地址)
    node2的ip地址分別為:
    eth0:192.168.0.66
    eth1:10.0.0.4 (心跳地址)
    192.168.0.30(虛擬ip地址)
    注意:保證兩台電腦每塊網卡能夠ping通。

    二:保證兩台電腦以下文件必須相同
    /etc/hosts
    /etc/host.conf
    /etc/resolv.conf
    #vi /etc/hosts

    node1的hosts內容如下:
    ip地址 域名 機器名
    192.168.0.65 node1.example.com node1
    10.0.0.3 node1
    192.168.0.66 node2.example.com node2
    10.0.0.4 node2
    (保證機器名和參數uname -n輸出一致)
    #vi /etc/host.conf
    order hosts,bind
    #vi /etc/resolv.conf
    nameserver 202.96.209.133(DNS地址如果為空可以根據當地dns輸入)

    node2的hosts內容如下:
    ip地址 域名 機器名
    192.168.0.65 node1.example.com node1
    10.0.0.3 node1
    192.168.0.66 node2.example.com node2
    10.0.0.4 node2
    (保證機器名和參數uname -n輸出一致)
    #vi /etc/host.conf
    order hosts,bind
    #vi /etc/resolv.conf
    nameserver 202.96.209.133(DNS地址如果為空可以根據當地dns輸入)

    三:在兩台電腦上分別安裝heartbeat軟件包。
    按如下順序
    1:heartbeat-gui-2.1.2-2.el4.centos.i386.rpm
    2:heartbeat-pils-2.1.2-2.el4.centos.i386.rpm
    3:heartbeat-stonith-2.1.2-2.el4.centos.i386.rpm
    4:heartbeat-2.1.2-2.el4.centos.i386.rpm

    四:配置文件。
    進入目錄/usr/share/doc/heartbeat-2.1.2/目錄,復制authkeys、ha.cf 和 haresources到/etc/ha.d/目錄進行配置。
    (這三個文件在兩台電腦裡必須一致。)配置如下:

    配置心跳的加密方式:authkeys
    #vi /etc/ha.d/authkeys

    使用雙機對聯線(網線為交叉線),配置如下:
    #vi /etc/hc.d/authkeys
    auth 1
    1 crc
    存盤退出,然後
    #chmod 600 authkeys
    修改文件權限(必須)

    配置心跳的配置文件:ha.cf
    #vi /etc/ha.d/ha.cf
    logfile /var/log/ha-log (ha的日志文件記錄位置。如沒有該目錄,則需要手動添加)

    bcast eth1

    keepalive 2 (設定心跳(監測)時間為2秒)

    warntime 10 (超出該時間間隔未收到對方節點的心跳,則發出警告並記錄到日志中。)

    deadtime 30 (超出該時間間隔未收到對方節點的心跳,則認為對方已經死亡)

    initdead 120
    (在某些系統上,系統啟動或重啟之後需要經過一段時間網絡才能正常工作,該選項用於解決這種情況產生的時間間隔。取值至少為deadtime的兩倍。)

    udpport 694 (使用udp端口694 進行心跳監測)

    auto_failback off
    nice_failback on

    (nice_failback 這一選項在此版本的heartbeat裡沒有,如果沒有可以根據需要手工添加。heartbeat的兩台主機分別為主節點和從節點,主節點在正常情況下占用資源並運行所有的服務,遇到故障時把資源交給從節點並由從節點運行服務。1:當auto_failback選項為on時,一旦主節點恢復運行,則自動恢復資源。2:當auto_failback選項為off並且nice_failback選項為on時,一旦主節點恢復運行,則不會自動恢復資源。此設置為第二種情況。)

    node node1 (節點1,必須要與 uname -n 指令得到的結果一致.)
    node node2 (節點2)

    配置心跳的資源:haresources
    #vi /etc/ha.d/haresources

    node1 192.168.0.30 httpd mysql(先啟動httpd再啟動mysql,關閉時先關閉mysql再關閉httpd)指定node1啟動httpd和mysql服務,系統附加一個虛擬IP 192.168.0.30給eth0:0。這裡如果node1宕機後,node2可以自動啟動httpd和mysql服務,並新分配IP 192.168.0.30給node2的eth0:0.web服務的監聽地址要設置為虛擬ip地址。

    五:設置heartbeat自動啟動(啟動系統時啟動)
    cd /etc/rc.d/rc0.d
    ln -s /etc/init.d/heartbeat K05heartbeat

    cd /etc/rc.d/rc3.d
    ln -s /etc/init.d/heartbeat S75heartbeat

    cd /etc/rc.d/rc5.d
    ln -s /etc/init.d/heartbeat S75heartbeat

    cd /etc/rc.d/rc6.d
    ln -s /etc/init.d/heartbeat K05heartbeat
    (字母S和K為大寫)

Copyright © Linux教程網 All Rights Reserved