1. 程式人生 > >NLB網路負載均衡管理器詳解(轉載)

NLB網路負載均衡管理器詳解(轉載)

篩選 .html 用戶訪問 並且 operation 可用性 相關 .... 獨立

序言


在上一篇配置iis負載均衡中我們使用啦微軟的ARR,我在那篇文章也中提到了網站的高可用性,但是ARR只能做請求入口的消息分發服務,這樣如果我們的消息分發服務器給down掉啦,那麽做再多的應用服務集群也都枉然。
這篇文章我主要針對解決這一問題來做分析,引入NLB,相對於ARR來說,ARR算是應用級別的負載均衡方案,而NLB則是服務器級別的負載均衡方案。
如果微軟的這兩款方案我們結合起來使用,那便是微軟高可用網站方案的天作之合啦。。

Application Request Route與NLB高可用方案的演進


先說Application Request Route,他的具體實施方案,我已在我以前的文章中有描述,大家可以了解下,這裏我配圖做個簡介

技術分享圖片

ARR可以檢測到你的iis應用是否可用,並對用戶的請求實施負載均衡方案,根據我們配置的負載均衡算法,把用戶的請求分發到應用服務器中。
但是,如果我們的ARR服務器down掉之後,我們的整個應用程序就無法使用,達不到24*7用不宕機的高可用要求。
下面配圖為NLB的網路負載平衡方案

技術分享圖片

NLB可以最多可以配置32臺服務器,這32臺服務器通過擁有自己的獨立ip之外,還共有一個虛擬IP,用戶訪問虛擬ip,nlb集群根據配置的負載算法來確定把用戶的請求分發給那臺應用服務器,如果一臺NLB服務器down掉,則不會影響消息的分發可達到7*24小時不down機的高可用方案。
但是,NLB不能檢測應用你的iis網站是否down掉,只能檢測服務器是否down掉,這樣一來,如果你的iis網站已經停止啦,nlb還給分發用戶請求,那樣麻煩可就來啦。

那麽我們使用微軟的技術怎麽樣做到網站的高可用呢?對,就是NLB+Application Request Route .

技術分享圖片

用戶請求虛擬ip,接入nlb,nlb檢測一臺可用的服務器,吧請求發給arr,arr在檢測可用的網站把用戶請求給處理掉。叼!!叼!!叼!!!!

NLB的安裝配置



打開windows服務器,進入服務器管理界面選擇功能,然後添加功能。

技術分享圖片

安裝過之後,打開網路負載平衡器

技術分享圖片

新建集群,首先你在你局域網中,找一個沒有使用過的ip作為你集群的虛擬ip。

技術分享圖片

設置優先級,優先級數字越小,則代表越高。

技術分享圖片

添加集群ip也就是你事先檢查過局域網中不存在的一個ip地址,他就是圖中的虛擬ip。

技術分享圖片

接下來設置群集參數

技術分享圖片

群集操作模式(Cluster operation mode)的三個選項 ,含義如下:

  • 單播(Unicast):在每個群集成員上,NLB覆蓋網絡適配器上制造商提供的 MAC 地址。NLB 對所有成員都使用相同的單播 MAC 地址。這種模式的優點是它可以無縫地與大多數路由器和交換機協同工作。缺點是到達群集的流量會擴散到交換機虛擬 LAN (VLAN) 上的所有端口,並且主機之間的通信不能通過 NLB 綁定到的適配器,也即實體主機間不可以互相通信。若我們在NLB創建時選擇單播的模式,在“群集IP配置”中的“網絡地址”是以“02 - BF”開頭,後面緊跟IP地址的十六進制表示,該網絡地址與實際主機的MAC地址相同,後續加入的主機也將修改為此MAC地址。
  • 多播(Multicast):保留原廠 MAC 地址不變,但是向網絡適配器中增加了一個第 2 層多播 MAC 地址。所有入站流量都會到達這個多播 MAC 地址。優點是這種方法可以通過在交換機的“內容可尋址存儲器”(CAM) 表中創建靜態項,從而使得入站流量僅到達群集中的主機。缺點是因為 CAM 項必須靜態關聯一組交換機端口,如果沒有這些 CAM 項,入站流量仍然會擴散到交換機 VLAN 上的所有端口。還有一個缺點就是很多路由器不會自動將單播 IP 地址(群集的虛擬 IP 地址)與多播 MAC 地址關聯起來。如果進行靜態配置的話,一些路由器可以存在這種關聯。若我們在NLB創建時選擇多播的模式,在“群集IP配置”中的“網絡地址”是以“03 -BF”開頭,後面緊跟IP地址的十六進制表示。
  • IGMP多播(IGMP multicast):在選擇多播模式時,後面還有個復選項“IGMP Multicast(IGMP多播)”,若復選此項,就像多播操作模式一樣,NLB 保留原廠 MAC 地址不變,但是向網絡適配器中增加了一個 IGMP 多播地址。此外,NLB 主機會發出這個組的 IGMP 加入消息。如果交換機探測到這些消息,它可以使用所需的多播地址來填充自己的 CAM 表,這樣入站流量就不會擴散到 VLAN 上的所有端口。這是這種群集模式的主要優點。缺點是有一些交換機不支持 IGMP 探測。除此之外,路由器仍然支持單播IP 地址到多播 MAC 地址的轉換。在IGMP多播模式下,將采用“01 – 00 - 5E”開頭的MAC地址。在多播的模式下,實體主機之間可以互相通信。

接下來的窗口點擊編輯(Edit)按鈕,來添加/編輯端口規則

技術分享圖片

設置需要集群負載的端口然後設置協議,分發形式。

技術分享圖片

然後再添加一臺服務器到集群中。

技術分享圖片

這樣就成功啦。就是如此簡單。
那麽回過頭來我們來看下篩選模式的相關性。

  • 無:加入A,B兩臺服務器,請求分發是這樣的:ABABABABABAB.....
  • 單一:加入A,B兩臺服務器,請求分發是這樣的:AAAAAAAAAAAAAAAAA.....或者BBBBBBBBBBB....
  • 網絡:根據IP的Class C屏蔽來決定交由哪一部服務器來處理,也就是一部服務器只會處理來自某些網段C的請求。這種方式可確保使用多重Proxy的客戶端能導向到相同的服務器。
  • 單一主機:優先級別最高的一臺可用服務器處理所有的用戶請求。
  • 禁用此端口範圍:配置的端口範圍不做轉發,剩余的才做。

展示下效果


技術分享圖片

53服務器,訪問虛擬ip176,獲取到121服務器的內容。

技術分享圖片

模擬100個用戶,發送1000個請求虛擬集群ip,黃色訪問的是121服務器,白色是122服務器,關聯性為無。
這篇文章就到這裏,其他的測試結果不一一展示,自己做下吧,體會更深刻點。

原文鏈接

NLB網路負載均衡管理器詳解(轉載)