軟硬兩個角度學習網絡負載均衡
初學負載均衡,如果不能很好把握它的知識,我們可以多換幾個角度進行學習。那么,在此,我們為大家以軟、硬件兩個角度對負載均衡進行詮釋。希望大家在這個角度上能夠明晰網絡負載均衡的意義,掌握其中的要點,為今后的學習做出鋪墊。望所有讀者都能獲得幫助。
網絡負載均衡主要分為軟件負載均衡及硬件負載均衡,下面簡單介紹一些兩種方式的技術特點。
一、軟件負載均衡
軟件負載均衡是指在系統服務器上安裝相應負載均衡軟件,進行相關的配置,達到均衡負載的目的。它基于特定的使用環境、配置簡單、使用靈活、成本較低,主要包括以下幾種方式。
1、服務器集群技術
首先介紹Microsoft服務器集群技術,它主要包括微軟集群服務(MSCS)、網絡負載均衡(NLB)及組件負載均衡(CLB)幾個組件,它們集成在windows 2000高級版、windows 2000數據中心版及windows 2003 企業版等操作系統當中。
通過在兩臺或多臺服務器之間安裝集群服務,可以將兩臺或多臺服務器構建成一個負載均衡服務器群。多臺服務器對外只提供一個共用外網IP,群內各服務器使用單獨的內網IP通訊,相互檢測及同步數據。通過配置網絡負載均衡,可以有效地把對服務器網站的訪問量分配到群中各服務器當中,避免因訪問量過大而產生瓶頸。集群組中的任何一臺服務器出現故障都不會影響網站的對外服務,組中的其他服務器會自動接管故障服務器的訪問量及處理數據,從而實現多機熱備份、多機負載均衡的功能。
除了windows集成的集群軟件之外,還有不少軟件廠商也開發出基于不同操作系統的集群軟件,如LanderCluster、Co-StandBy等等。這些軟件對服務器要求較高,同時也占用部分系統資源,故使用的時候要合理設計服務器的相關配置。
2、基于DNS的負載均衡
基于服務器軟件的負載均衡對服務器軟硬件均有一定要求,負載均衡也可在服務器軟件之外來完成。早期的負載均衡技術是通過DNS服務中的隨機名字解析來實現的,在DNS服務器中,可以為多個不同的地址配置同一個名字,而最終查詢這個名字的客戶機將在解析這個名字時得到其中的一個地址。因此,對于同一個名字,不同的客戶機會得到不同的地址,他們也就訪問不同地址上的Web服務器,從而達到負載均衡的目的。
DNS負載均衡的優點是簡單、易行,并且服務器可以位于互聯網的任意位置上。然而它也存在一些缺點,一個缺點是為了保證DNS數據及時更新,一般都要將DNS的刷新時間設置的較小,但太小就會造成太大的額外網絡流量,并且更改了DNS數據之后也不能立即生效。第二點是DNS負載均衡無法得知服務器之間的差異,它不能做到為性能較好的服務器多分配請求,也不能了解到服務器的當前狀態,甚至會出現客戶請求集中在某一臺服務器上的偶然情況。
3、反向代理負載均衡
使用代理服務器可以將請求轉發給內部的Web服務器,使用這種加速模式顯然可以提升靜態網頁的訪問速度。因此也可以考慮使用這種技術,讓代理服務器將請求均勻轉發給多臺內部Web服務器之一上,從而達到網絡負載均衡的目的。這種代理方式與普通的代理方式有所不同,標準代理方式是客戶使用代理訪問多個外部Web服務器,而這種代理方式是多個客戶使用它訪問內部Web服務器,因此也被稱為反向代理模式。
實現這個反向代理能力并不能算是一個特別復雜的任務,但是在負載均衡中要求特別高的效率,這樣實現起來就不是十分簡單的了。針對每一次代理,代理服務器就必須打開兩個連接,一個為對外的連接,一個為對內的連接,因此對于連接請求數量非常大的時候,代理服務器的負載也就非常之大了,在最后反向代理服務器會成為服務的瓶頸。
使用反向代理的好處是,可以將負載均衡和代理服務器的高速緩存技術結合在一起,提供有益的性能,具備額外的安全性,外部客戶不能直接訪問真實的服務器。并且實現起來可以實現較好的負載均衡策略,將負載可以非常均衡的分給內部服務器,不會出現負載集中到某個服務器的偶然現象。
4、基于NAT的負載均衡技術
網絡地址轉換為在內部地址和外部地址之間進行轉換,以便具備內部地址的計算機能訪問外部網絡,而當外部網絡中的計算機訪問地址轉換網關擁有的某一外部地址時,地址轉換網關能將其轉發到一個映射的內部地址上。因此如果地址轉換網關能將每個連接均勻轉換為不同的內部服務器地址,此后外部網絡中的計算機就各自與自己轉換得到的地址上服務器進行通信,從而達到負載分擔的目的。
二、硬件負載均衡
硬件負載均衡是直接在服務器和外部網絡間安裝負載均衡設備,或者叫做負載均衡器。因為使用專用設備完成特定工作,獨立于操作系統,整體性能得到大幅提高,并且根據不同需求可以設定多種負載均衡策略,智能化較高,可達到較好的網絡負載均衡效果。
除了使用負載均衡器之外,還有一些交換機和路由器廠商也提出負載均衡方案。例如把三層交換機與負載均衡器結合使用,把負載均衡功能集成于交換機當中,這樣不但可以提供較高的處理能力,而且還有多種接口類型可以使用。
對于軟件負載均衡而言,硬件負載均衡在功能、性能、便捷性都要好一些,但搭建成本就比較高。因此,用戶要跟據自身的情況選擇適合的負載均衡方案,實現低投入、高產出,在性能與價格之間尋找到最佳的平衡點。