簡(jiǎn)說(shuō)LVS負(fù)載均衡集群系統(tǒng)
在龐大的數(shù)據(jù)處理和高要求的服務(wù)器族中,使用一個(gè)負(fù)載均衡集群系統(tǒng)方案是一個(gè)硬性的指標(biāo)。那么我們下面主要分析一下LVS負(fù)載均衡集群系統(tǒng)的相關(guān)定義,組成,優(yōu)點(diǎn)和結(jié)構(gòu)。
一、LVS負(fù)載均衡集群系統(tǒng)相關(guān)概念
基于中軟Linux的虛擬服務(wù)器(Linux Virtual Server,即LVS)是一個(gè)具有高可用性特點(diǎn)的負(fù)載均衡集群系統(tǒng)。該負(fù)載均衡集群系統(tǒng)可以提供與服務(wù)器節(jié)點(diǎn)的數(shù)量、性能成正比的負(fù)載能力,有效提高服務(wù)的吞吐量、可靠性、冗余度、適應(yīng)性,性能價(jià)格比高。同時(shí),LVS也是利用低端設(shè)備實(shí)現(xiàn)高端服務(wù)器性能的有效途徑。
中軟Linux虛擬服務(wù)器(Linux Virtual Server,即LVS)是建立在一個(gè)主控服務(wù)器(director)及若干真實(shí)服務(wù)器(real-server)所組成的集群之上。real-server負(fù)責(zé)實(shí)際提供服務(wù),主控服務(wù)器根據(jù)指定的調(diào)度算法對(duì)real-server進(jìn)行控制。而集群的結(jié)構(gòu)對(duì)于用戶來(lái)說(shuō)是透明的,客戶端只與單個(gè)的IP(集群系統(tǒng)的虛擬IP)進(jìn)行通信,也就是說(shuō)從客戶端的視角來(lái)看,這里只存在單個(gè)服務(wù)器。
Real-server可以提供眾多服務(wù),如ftp, http, dns, telnet, nntp, smtp 等。主控服務(wù)器負(fù)責(zé)對(duì)Real-Server進(jìn)行控制。客戶端在向LVS發(fā)出服務(wù)請(qǐng)求時(shí),Director會(huì)通過(guò)特定的調(diào)度算法來(lái)指定由某個(gè)Real-Server來(lái)應(yīng)答請(qǐng)求,而客戶端只與Load Balancer的IP(即虛擬IP,VIP)進(jìn)行通信。
二、LVS負(fù)載均衡集群系統(tǒng)優(yōu)點(diǎn)
◆提高吞吐量:為獲得更高的吞吐量,在LVS中增加real-servers,其開銷只是線性增長(zhǎng);而如果我們選擇更換一臺(tái)更高性能的服務(wù)器來(lái)獲得相當(dāng)?shù)耐掏铝?其開銷要大得多,而且被替換掉的舊服務(wù)器會(huì)造成資源的浪費(fèi)。
◆冗余:如果LVS中某real-server由于需要升級(jí)或其它原因而停止服務(wù),其退出以及恢復(fù)工作,并不會(huì)造成整個(gè)LVS對(duì)客戶端服務(wù)的中斷。
◆適應(yīng)性:不管是需要吞吐量逐漸地變化(因日常事務(wù)量變化),還是快速地變化(因突發(fā)事務(wù)量變化),服務(wù)器數(shù)量的增減對(duì)于客戶端都是透明的。
三、LVS負(fù)載均衡集群系統(tǒng)結(jié)構(gòu)圖
一個(gè)LVS負(fù)載均衡集群系統(tǒng)基礎(chǔ)設(shè)置
傳統(tǒng)的“客戶端/服務(wù)器"的關(guān)系在LVS中仍舊適用,原因在于:
◆所有服務(wù)器的IP地址都映射為一個(gè)IP(即VIP),客戶端只能看見此IP地址
◆所有服務(wù)器都認(rèn)為它與客戶端是直接聯(lián)系的。