首先,在主、備節點上配置lvs資訊,一般通過ldirectord配置
在搭建Director Server的雙機熱備系統之前,首先需要在兩台主機上安裝heartbeat軟體,安裝軟體後在/etc/ha.d/ha.cf産生主配置檔案
1.配置heartbeat的主配置檔案/etc/ha.d/ha.cf
#debugfile /var/log/ha-debug
logfile /var/log/ha-log #指定heartbeat的日志存放位置
#crm yes #是否開啟ClusterResourceManager(叢集資源管理)功能
bcast eth1 #指定心跳使用以太網廣播方式,并且在eth1接口上進行廣播
logfacility local0
keepalive 2 #指定心跳間隔時間為2s(即每2s在eth1上發送一次廣播)
deadtime 30 #如果指定備用節點在30s内沒有收到主節點的心跳信号,則立即接管
#主節點的資源
warntime 10 #指定心跳延遲的時間為10s。當10s内備機不能接受到主節點的心跳信
#号時,就會在日志中寫入一個警告資訊,但此時不會切換服務
initdead 120 #在某些系統上,系統啟動或重新開機之後需要經過一段時間網絡才能正常
#工作,該選項用于設定這種情況産生的時間間隔,取值至少為deadtime的2倍
udpport 694 #設定廣播通信的端口,694為預設使用的端口号
baud 19200 #設定串行通信的比特率
serial /dev/ttyS0 #選擇串行通信裝置,用于雙機使用序列槽線連接配接情況,如果雙機通
#過以太網連接配接,則應該關閉該選項
#ucast eth0 192.168.1.1 #采用網卡eth0的UDP單點傳播來組織心跳,後面跟的IP位址應為
#雙機中對方的IP位址
#mcast eth0 225.0.0.1 694 1 0 #采用網卡eth0的UDP多點傳播來組織心跳,一般在備機不
#止一台時使用。bcast、ucast和mcast分别代表廣播、單點傳播和多點傳播,
#是組織心跳的3種方式,任選其一即可
auto_failback on #用來定義當主節點恢複後,是否将服務自動切回,heartbeat的兩
#台主機分别表示主節點和備用節點。主節點在正常情況下占用資源并運作所有服
#務,遇到故障時把資源交給備用節點并由備用節點運作服務。在将該選項設定on的
#情況下,一旦主節點恢複運作,則自動擷取資源并取代備用節點;如果該選項設定
#為off,那麼主節點恢複後,将變為備用節點,而原來的備用節點變成主節點
#stonith bayteach /etc/ha.d/conf/stonith.baytech #stonish的主要作用是使出現
#問題的節點從叢集環境中脫離,進而釋放叢集資源,避免兩個節點争
#用一個資源的情況發生。保證共享資料的安全性和完整性
#watchdog /dev/watchdog #該選項是可選配置,通過heartbeat來監控系統的運作狀
#态。使用該特性,需要在核心中載入“softdog”核心子產品,用來生成實際的裝置
#檔案,如果系統中沒有這個核心子產品,就需要指定此子產品,重新編譯核心。編譯
#完成後輸入“insmod softdog”加載該子產品,然後輸入grep misc /proc/devices
#(結果應為10),輸入cat /proc/misc |grep watchdog (結果應為130)。最好,
#生成裝置檔案mknod /dev/watchdog c 10 130即可完成此功能
node DR1 #主節點主機名稱,必須要和uname -n檢視的一緻
node DR2 #備用節點主機名稱,必須要和uname -n檢視的一緻
ping 192.168.12.1 #選擇ping的節點。ping節點選擇的越好,HA的叢集就越健壯。可
#以選擇固定的路由器作為ping節點,但是最好不要選擇叢集中的成
#員作為ping的節點,ping節點僅用來測試網絡連接配接
ping node 192.168.12.188 192.168.12.100 #指定ping node。ping node并不是雙機中
#的兩個節點,僅僅用來測試網絡的連通性
respawn hacluster /usr/lib/heartbeat/ipfail #該選項是可選配置,列出與
#heartbeat一起啟動和關閉的程序,該程序一般是heartbeat的內建的
#插件,這些程序遇到故障可以自動重新啟動。最常用的程序是
#ipfail,此程序用來檢測和處理網絡故障,需要配合ping語句指定的
#ping node來檢測網絡的連通性。其中hacluster表示啟動ipfail程序的身份
2.配置heartbeat的資源檔案/etc/ha.d/haresources
haresources檔案用于指定雙機系統的主節點、叢集ip、子網路遮罩、廣播位址以及啟動
服務等叢集資源。檔案每一行可以包括一個或多個資源腳本名,資源腳本名之間用空格隔開,參數之間是有兩個冒号隔開。
DR1 IPaddr::192.168.12.200/24/eth0 ldirectord
#設定DR1為主節點,叢集伺服器的IP位址為192.168.12.200,netmask為255.255.255.0,同時指定此IP使用的網絡接口為eth0,heartbeat托管的服務為ldirectord
注意:這裡的ldirectord對應的檔案為/etc/init.d/ldirectord,即ldirectord服務的啟動檔案,也就是将ldirectord的啟動與關閉交給heartbeat來管理。另外,LVS主節點和備份節點的資源檔案haresources要完全一緻,當指定DR1是主節點後,另一個節點DR2就是備用節點。
3.配置heartbeat的認證檔案/etc/ha.d/authkeys
authkeys檔案用于設定heartbeat的認證方式,該檔案中有3種可用的認證方式crc、sha1和md5,這裡使用crc認證方式。設定如下:
auth 1
1 crc
#2 sha1 sha1_any_password
#3 md5 md5_any_password
需要說明的一點是無論auth後面指定的是什麼數字,在下一行必須作為關鍵字再次出現,例如指定“auth 6 ”下面一定要有一行“6 認證類型”,最後確定這個檔案的權限是600
4.啟動heartbeat服務
所有配置完成後,就可以在主、備Director Server上啟動heartbeat服務了
/etc/init.d/heartbeat {start|stop|status|restart|reload|force-reload}
由于heartbeat托管了主、備Director Server上的ldirectord服務,是以隻需在主、備
上啟動heartbeat服務即可,這樣ldirectord服務就在主機上起來了
啟動Real Server節點服務