目前,隨著高校招生規模的日益擴大,校園網中許多系統原有的單臺服務器的并發處理能力及負載能力都已越來越無法滿足需求,提高服務器性能已迫在眉睫。雖然重新購買新的性能更高的服務器,如小型機或當下較為流行的刀片集群服務器是一種解決方法,但首先成本太高,其次是許多原有服務器仍然較新,各方面的性能指標良好,廢棄不用將造成極大的資源浪費。采用分布式體系結構設計的服務器集群系統恰恰是解決這類問題的較好方法。
服務器集群系統的內部由一組相對松散的計算機組成,但對外則只有唯一的訪問地址。當有外部請求發生時,系統的調度服務器根據實際情況,采用適當的負載均衡調度算法,將任務合理地分配到系統中的某臺機器上,從而將一組服務器構成一個高性能的虛擬服務器。集群系統還具有良好的擴展性和靈活性,通過在服務器集群中加入和刪除結點實現系統的伸縮性,通過檢測結點或服務進程故障和正確地重置系統達到高可靠性。服務器集群的結構對客戶是透明的,客戶訪問集群提供的網絡服務就像訪問一臺高性能、高可用的服務器一樣。客戶程序不受服務器集群的影響,不需作任何修改。
LVS負載均衡技術及其體系結構
目前雖然Windows和Linux都推出支持集群的系統,但Linux的集群更成熟豐富,同時又是開放源代碼的免費軟件,其中運用最廣泛的是LVS(Linux Virtual Server)。LVS自1998年開始,發展到現在已經是一個較成熟的項目了。LVS目前主要有兩種負載平衡軟件,一種是基于TCP/IP層交換的IPVS軟件,一種是基于內容請求分發的應用層交換軟件KTCPVS。KTCPVS目前仍處于試用階段,尚不成熟,而IPVS已較為成熟,有許多比較著名的網站和組織都在使用該軟件架設他們的服務器集群。
IPVS集群的特點可以歸結如下:
1.功能。具有三種IP負載均衡技術和八種連接調度算法。虛擬服務的設置數目沒有限制,每個虛擬服務有自己的服務器集群。它支持持久的虛擬服務(如session等需要該功能的支持),并提供詳盡的統計數據,如連接的處理速率和報文的流量等。針對大規模拒絕服務(Deny of Service)攻擊,有多種防衛策略。
2.適用性。后端服務器可運行任何支持TCP/IP的操作系統,包括Linux,各種Unix(如FreeBSD、Sun Solaris、HP Unix等),Mac/OS和Windows NT/2000等。負載調度器能夠支持絕大多數的TCP和UDP協議。
3.性能。LVS服務器集群系統具有良好的伸縮性,可支持幾百萬個并發連接。
4.可靠性。LVS服務器集群軟件已經在很多大型的、關鍵性的站點得到很好的應用,所以它的可靠性在應用中得到很好的證實。有很多調度器運行一年多,未作一次重啟動。
校園網中集群系統的應用
目前在校園網中有許多系統都需集群服務的應用,如校園網的代理服務、DNS服務等網絡服務以及校內許多基于WEB的應用系統。在應用系統中,教務系統的需求較為突出。由于學生數量的急劇增長,對教務系統的服務器的并發性能要求大幅提高,尤其是選課系統,由于大量在線的學生同時選課,造成原有服務器高峰期擁塞嚴重,因此迫切需要通過集群服務來改善性能。下面就以選課系統為例,介紹系統的體系結構及主要技術要點。
1.系統體系結構簡介。選課系統的體系結構如圖1所示,主要有三個主要組成部分。

(1)負載平衡器(Load Balancer):它是整個集群對外面的前端機,負責根據負載情況和預先設置的調度算法將請求轉發到選出的服務器。在本應用中,我們采用DELL 4400服務器,它承擔校內所有應用系統的負載均衡,選課系統是其中的一個虛擬服務。
(2)服務器池(Server Pool):這是一組真正執行客戶請求的服務器。本應用中,三臺選課服務器都采用了HP DL