Windows Server 2008 R2 負載平衡安裝配置入門篇
一、簡單介紹負載均衡
負載均衡也稱負載共享,它是指負載均衡是指通過對系統(tǒng)負載情況進行動態(tài)調(diào)整,把負荷分攤到多個操作節(jié)點上執(zhí)行,以減少系統(tǒng)中因各個節(jié)點負載不均衡所造成的影響,從而提高系統(tǒng)的工作效率。
在常用的大型服務器系統(tǒng)當中都存在著負載均衡組件,常用的像微軟的網(wǎng)絡負載平衡NLB、甲骨文的Oracle RAC、思科的負載均衡(SLB),Apach+Tomcat 負載均衡,它們能從硬件或軟件不同方面實現(xiàn)系統(tǒng)各節(jié)點的負載平衡,有效地提高大型服務器系統(tǒng)的運行效率,從而提升系統(tǒng)的吞吐量。本篇文章以微軟的網(wǎng)絡負載平衡NAT為例子,簡單介紹Windows Server 2008 R2 負載平衡的安裝與使用方式。
在Windows Server 2008 R2當中,存在著 “網(wǎng)絡負載平衡” 功能 (簡稱 NLB, Network Load Balancing),它以TCP/IP 為基礎(chǔ)的服務,可以將一個已注冊的IP地址映射到多個內(nèi)部域的IP地址當中,讓多臺主機為同時對網(wǎng)絡請求作出反應。使用NLB網(wǎng)絡負載均衡最多可以連接到32臺主機上,讓32臺主機共同分擔大量的服務壓力。在Windows Server 2008 R2 中還具備 “故障轉(zhuǎn)移群集” 功能,它是利用負載共享的方式,把多臺服務器的共用信息進行持久化儲存,當其中某臺服務器出現(xiàn)問題時,請求會自動分攤到其他服務器當中。使用 “故障轉(zhuǎn)移群集” 功能,更能保證 “網(wǎng)絡負載平衡集群”的正常運行,有利于統(tǒng)籌管理分布式系統(tǒng)中的各種資源,利用共享信息及其服務機制擴大系統(tǒng)的處理能力。“故障轉(zhuǎn)移群集” 功能將在下一篇文章再作詳細介紹。
二、NLB 主要功能
支持群集功能,一個群集最多支持32臺服務器。支持網(wǎng)絡地址轉(zhuǎn)換(NAT)功能,能把請求自動轉(zhuǎn)發(fā)到 NLB 群集上對各臺服務器。實現(xiàn)管道化式管理,允許向 NLB 群集同時發(fā)送多個請求。支持多地址多端口管理,每臺服務器可以綁定多個虛擬 IP,每個虛擬 IP 可建立多個開放式端口。支持故障快速恢復功能,當服務器出現(xiàn)故障重啟后將自動恢復群集聯(lián)機。支持單播、多播、IGMP多播多種群集操作模式。支持事件日志管理,可以快速查閱群集事件記錄。
NLB安裝
三、NLB 使用方式
3.1. 打開 “服務管理器”,添加 “網(wǎng)絡負載平衡” 功能。
3.2. 安裝完成后,打開“網(wǎng)絡負載平衡管理器”
3.3.新建群集,連接到作為群集服務器當中的一臺主機
3.4.為此主機綁定優(yōu)先級數(shù),和專用的IP地址,一臺主機可以綁定多個IP地址
3.5.建立群集IP地址以進行負載平衡,若存在多個IP地址系統(tǒng)將會以第一個IP作為此群集的IP對信息進行檢測。
3.6.設定群集參數(shù),此處可設定群集完整的Internet名稱,確定其操作模式。此處需要稍作解釋:
3.6.1 單播模式
指把各主機節(jié)點重時指向同一個虛擬MAC地址,在此情況下各節(jié)點之間不能實現(xiàn)通訊。
3.6.2 多播模式
指各主機節(jié)點都保留原有的MAC地址,此外再外加專用于NLB的通訊MAC地址,使各節(jié)點之間能正常實現(xiàn)通訊。但并非所有的路由器或交換機都支持多播模式,使用時需要謹慎處理。
3.6.3 IGMP多播模式
建立在多播模式功能之上,在默認情況下每隔60秒發(fā)送一次IGMP信息。它可以確保發(fā)送給網(wǎng)絡負載平衡群集的通訊只通過服務于群集主機的端口,而不是所有交換機端口。
注意: 由于并非所有路由器或交換機都支持多播模式,所以在不確定的情況下最好使用雙網(wǎng)卡單播模式,并且預先設置好ARP,否則可能造成跨網(wǎng)段無法訪問群集ip的錯誤。
3.7 綁定群集開放的端口,此處可為主機設置一定范圍內(nèi)的開放端口。置于TCP、UDP協(xié)議就不多作解釋,一般設置只使用TCP協(xié)議使數(shù)據(jù)傳輸更具備可靠性和安全性。此處對篩先模式稍作解釋:
3.7.1 多主機
該參數(shù)指定了群集中多個主機處理與端口規(guī)則相關(guān)的網(wǎng)絡通訊。通過在多個主機之間分布網(wǎng)絡負載,該篩選模式提供了可縮放性能以及容錯??梢灾付ㄔ谥鳈C之間均衡分布負載,或每個主機處理指定的負荷量。在多主機相似性選項中,存在3種選擇:
1、“無”選項:指定來自同一客戶端 IP 地址的多條連接可由不同的主機(無客戶端的相似性)進行處理。第一次請求可能指向主機A,第二次請求可能指向主機B,為了實現(xiàn)在多臺主機之間共享session,系統(tǒng)應該預先把session作出持久化處理。若使用ASP.NET進行開發(fā)時,可通過命令:
aspnet_regsql.exe -S 〈SQL Server IP> -U 〈User Name> -P 〈Password> -E -ssadd -sstype c -d 〈Database Name>
建立用于Session持久化保存的數(shù)據(jù)庫
2、“單一”選項:指定網(wǎng)絡負載平衡應該將來自同一客戶端 IP 地址的多個請求導向同一臺群集主機。這是相似性的默認設置。
3、“網(wǎng)絡”選項:指相似性指定網(wǎng)絡負載平衡將來自同一個 TCP/IP C 類地址范圍的多個請求定向到同一臺群集主機。比如在客戶端使用了多臺代理服務器對群集進行訪問時,請求看起來像源自不同的計算機。啟用“網(wǎng)絡”相似性選項,可以正確處理同一客戶端多個代理服務器的session會話數(shù)據(jù)。
3.7.2 單一主機
該參數(shù)指定群集中的單個主機根據(jù)指定的處理優(yōu)先級來處理相關(guān)端口規(guī)則的網(wǎng)絡通訊。該篩選模式為處理網(wǎng)絡通訊提供了端口專用的容錯性能。
3.7.3 禁用該端口范圍
該參數(shù)指定阻止相關(guān)端口規(guī)則的所有網(wǎng)絡通訊。在這種情況下,網(wǎng)絡負載平衡驅(qū)動程序?qū)⒑Y選所有相應的網(wǎng)絡數(shù)據(jù)包或數(shù)據(jù)報。該篩選模式可讓您阻止傳送到特定范圍的端口的網(wǎng)絡通訊。
3.8 在完成群集配置后,在群集上按右鍵,選擇 “添加主機到群集”,重復 3.3 、3.4安裝步驟,可連接多臺群集主機。
四、網(wǎng)絡負載平衡群集系統(tǒng)測試
建立一個ASP.NET項目,加入以下 Default.aspx 頁面,然后建立一個群集,綁定IP為192.168.1.110,在編輯 “端口規(guī)則” 時,選擇 “多主機無相關(guān)性” 篩選模式。最后分別在群集加入Virtual-PC-A1、Virtual-PC-A2兩臺主機。使用第三方客戶端進行訪問時,多次點擊 NewPage 連接時,可檢測到系統(tǒng)會把請求連接到不同的主機之上。
<html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> <script type="text/C#" runat="server"> protected void Page_Load(object sender, EventArgs e) { String hostName = System.Net.Dns.GetHostName(); Response.Write(hostName+"<br/>"); IPAddress[] addressList = System.Net.Dns.GetHostAddresses(hostName); foreach(IPAddress address in addressList) Response.Write(address.ToString()+"<br/>"); } </script> </head> <body> <form id="form1" runat="server" > <div align="left"> <a target="_blank">New Page</a> </div> </form> </body> </html>
測試結(jié)果
五、NLB 安裝注意事項
5.1.如果需要使用“域”服務,一般在安裝 “網(wǎng)絡負載平衡” 管理器前,先添加“Active Directory 域服務” 角色,并進行林、域配置。
若服務器需要使用IIS或者ASP.NET,那么在安裝 NLB 前建議先添加Web服務器(IIS)服務器角色和 .NET Framework 3.5 功能
5.2.要建立 “網(wǎng)絡負載平衡群集” ,需要先在 “高級共享設置” 中打開 “啟用網(wǎng)絡發(fā)現(xiàn)” 功能。
若無法打開 “啟用網(wǎng)絡發(fā)現(xiàn)” 功能,可先在服務管理器中打開以下3項服務:
Function Discovery Resource PublicationSSDP Discovery UPnP Device Host
5.3. 若使用VMware、Hyper-V等虛擬化工具,在網(wǎng)絡中實現(xiàn)信息共享時無法查找到其他虛擬主機,可嘗試檢查虛擬機設置時“網(wǎng)絡適配器”是否使用同一種“網(wǎng)絡連接方式”,并且已打開“網(wǎng)絡共享服務”功能。
5.4.在“網(wǎng)絡負載平衡管理器”中建立群集,群集連接主機時顯示“RPC連接服務器不可用”等錯誤信息,可嘗試檢查主機有否打開“Remote Procedure Call(RPC)”和“Remote Procedure Call(RPC)Locator” 服務,并查檢“Remote Procedure Call(RPC)的屬性——依存關(guān)系——依賴服務” 的“狀態(tài)”是否已經(jīng)全部設置為 “已經(jīng)啟動” 或 “啟動類型” 設置為 “自動”。
5.5. 若使用虛擬化工具克隆主機,在群集連接主機時顯示 “指定主機沒有可用于安裝新的群集的任何接口”,這可能是在克隆主機時多臺主機使用同一個MAC造成的,此時可以嘗試卸載網(wǎng)絡適配器的驅(qū)動程序,然后再進行驅(qū)動軟件更新。
5.6.若在群集連接主機時顯示出現(xiàn)錯誤提示 “在主機 ‘MyPC上的NLB管理器' 不能繼續(xù),因為沒有安裝Microsoft群集服務” ??梢詸z查服務器上是否已經(jīng)成功安裝 “網(wǎng)絡負載平衡” 服務,然后打開 “本地連接-屬性”,選擇“網(wǎng)絡負載平衡(NLB)”。
結(jié)束語
為滿足大型企業(yè)內(nèi)部需求,實現(xiàn)企業(yè)服務器的高性能、高可用度、高可靠度,各大軟、硬件提供商都構(gòu)建起一系列的解決方案,而微軟的網(wǎng)絡負載平衡(NLB)只是其中一種。但鑒于本人知識度有限,且并非網(wǎng)絡服務管理類專家,所以本文只牽涉到NLB入門安裝方面的知識。
更多資料可參閱 TechNet Library http://technet.microsoft.com/zh-cn/library/cc778263.aspx
文中存在的錯誤與漏洞敬請各位點評。
對 .NET 開發(fā)有興趣的朋友歡迎加入QQ群:230564952 共同探討 !
相關(guān)文章
IIS日志報Connections_Refused問題的解決方法
這篇文章主要介紹了IIS日志報Connections_Refused問題的解決方法,本文給出了2個解決方法,需要的朋友可以參考下2014-10-10win2016中企業(yè)AD域(域控服務器)的安裝和配置詳細教程
一般人數(shù)多的企業(yè)和工廠都會通過域控制器來進行統(tǒng)一管理,達到更好的管理效果,本文主要介紹了win2016中企業(yè)AD域(域控服務器)的安裝和配置詳細教程,感興趣的可以了解一下2023-08-08IIS8.5 配置錯誤提示不能在此路徑中使用此配置節(jié)的解決辦法
今天剛安裝好IIS8.5, 我的系統(tǒng)是win8.1 enterprise版本。 建了一個簡單的頁面準備調(diào)試,卻發(fā)現(xiàn)了這個錯誤,不能在此路徑中使用此配置節(jié)2014-07-07win2003 服務器安全設置教程(權(quán)限與本地策略)
腳本之家的這篇文章主要是補充下以前我們發(fā)的文章,對于服務器安全設置需要掌握很多的東西與技巧2012-07-07windows server2012無法連接無線網(wǎng)絡解決方法(windows無線連接)
windows server2012無法連接無線網(wǎng)絡解決方法,大家參考一下吧2013-12-12windows 服務器安全之磁盤訪問權(quán)限設置[完整篇]
在眾多的服務器安全設置中,對于權(quán)限的設置是比較完整的了2009-06-06Windows?Server?2012?基于iis的流媒體服務器的搭建圖文方法
IIS?Live?Smooth?Streaming(實時平滑流式處理)是微軟下一代流媒體解決方案。該技術(shù)是在IIS?web中集成媒體傳輸平臺IIS?media?services,實現(xiàn)利用標準?HTTP?Web?技術(shù)以及高級?Silverlight?功能,確保在互聯(lián)上傳輸質(zhì)量最佳、播放流暢音視頻節(jié)目2023-06-06Win2008 r2 IIS7.5制定目錄禁止執(zhí)行腳本的方法
這篇文章主要介紹了Win2008 r2 IIS7.5制定目錄禁止執(zhí)行腳本的方法,需要的朋友可以參考下2016-06-06