1. 程式人生 > >通過ldirectord配置lvs負載均衡服務器

通過ldirectord配置lvs負載均衡服務器

linux lvs 負載均衡

1.通過ldirectord在主、備Director Server上配置LVS

ldirectord是heartbeat的一個插件,在安裝heartbeat時,默認已經安裝了此插件。ldirectord主要用於監控集群系統中每個Real Server節點的運行狀態,某個節點的服務出現異常或主機出現故障時,此節點從集群系統剔除,並且在節點恢復正常後,重新將此節點加入集群系統。

除了監控Real Server節點外,ldirectord的另外一個功能是配置LVS,只需設置好Ldirectord的配置文件,啟動服務即可,Ldirectord會自動調用ipvsadm命令創建LVS路由表信息。ldirectord配置文件的默認路徑為/etc/ha.d/ldirectord.cf。

下面是需要配置的選項


checktimeout=20 #判定Real Server出錯的時間間隔

checkinterval=10 #指定ldirectord在兩次檢查之間的間隔時間

fallback=172.0.0.1:80 #當所有的Real Server節點不能正常工作時,Web服務器重定向的地址

autoreload=yes #是否自動重載配置文件,選yes時,配置文件發生變化時自動載入配置信息

logfile="/var/log/ldirectord.log" #設定ldirectord日誌輸出文件路徑

quiescent=no #當選擇no時,如果一個節點在checktimeout設置時間周期內沒有響應,

#ldirectord將會從LVS的路由表中直接移除Real Server,此時,將中斷

#現有的客戶端連接,並使LVS丟掉所有的連接跟蹤記錄和持續連接模板;

#如果選擇yes,當某個Real Server失效時,ldirectord將失效節點的權

#值設置為0,新的連接將不能到達,但是並不會從LVS路由表中清除此節

#點,同時,連接跟蹤記錄和程序連接模板仍然保留在director上


註意:以上幾項為ldirectord.cf文件的全局設置,它們可以應用到多個虛擬機。下面是每個虛擬機的配置



virtual=192.168.12.200:80 #指定虛擬的IP地址和端口號,註意,在virtual這行的後

#面行必須縮進4個空格或者一個tab制表符進行標記

real=192.168.12.132:80 gate #指定Real Server地址和端口,同時指定LVS工

#作模式,用gate表示DR模式,ipip表示TUNL模

#式,masq表示NAT模式

real=192.168.60.133:80 gate

fallback=127.0.0.1:80 gate

service=http #指定服務的類型,這裏是對http服務進行負載均衡

request="index.html" #ldirectord將根據指定的Real Server地址,結合該選

#項給出的請求頁面,發送訪問請求,檢查Real Server上的服務是否正常運行,必

#須確保這裏給出的頁面地址是可以訪問的,不然ldirectord會誤認為節點已經失

#效,發生錯誤的監控現象

receive="Test Page" #指定請求和應答字符串,也就是index.html內容

scheduler=rr #指定調度算法,這裏是rr(輪詢)算法

protocol=tcp #指定協議類型,LVS支持TCP和UDP協議

checktype=negotiate #指定ldirectord的檢測類型,checktype可以是

#connect、external、negotiate、off、on、ping和checktimeout這幾

#個,默認為negotiate,通過頁面交互來判斷服務器節點是否正常

checkport=80 #指定監控端口

virtualhost=www.ixdba.net #虛擬服務器的名稱,可以任意指定



配置完畢後可以執行如下命令啟動或者關閉ldirectord服務

/etc/init.d/ldirectord {start|stop}

註意:一般通過heartbeat托管的方式,托管給heartbeat來管理ldirectord服務,不用手動啟動和關閉ldirectord服務


本文出自 “夜色” 博客,請務必保留此出處http://liuqun.blog.51cto.com/3544993/1983271

通過ldirectord配置lvs負載均衡服務器