使用 Web 伺服陣列架構建立伺服器陣列
演講者:Jason Lee
本主題說明如何使用 Web Farm Framework (WFF) 2.0 從伺服器集合建立和設定 Web 伺服器陣列。
WFF 可讓您跨多個負載平衡的 Web 伺服器同步 Web 平台產品和元件、Web 應用程式、網站和設定設定。 在需要多個 Web 伺服器的情況下 (例如預備環境和生產環境),這可以大大簡化您的部署和設定流程。 您可以將 Web 應用程式部署到單一伺服器 (主伺服器),WFF 將自動將該 Web 應用程式複製到伺服器叢集中的所有其他 Web 伺服器上。
了解 Web Farm Framework
您可以使用 WFF 2.0 來佈建、管理內容並將其部署到一組 Web 伺服器。 WFF 部署由三個關鍵伺服器角色組成:
- 控制器伺服器。 您可以使用此伺服器來建立和設定 WFF 伺服器陣列。 控制器伺服器管理伺服器叢集中 Web 伺服器之間的 Web 平台元件、設定設定和應用程式的同步。 您在控制器伺服器上安裝 WFF 2.0,控制器伺服器將依序在伺服器陣列中的每台伺服器上安裝 WFF 代理程式。 控制器伺服器在概念上不屬於任何 WFF 伺服器陣列,單一控制器伺服器可以管理多個伺服器陣列。 在此方案中,您使用單一 WFF 控制器伺服器來建立和管理預備伺服器陣列和生產伺服器陣列。
- 主伺服器。 每個 WFF 伺服器陣列都包含一個主伺服器。 當您安裝 Web 平台元件或將應用程式部署到主伺服器時,WFF 會將您的變更同步到伺服器陣列中的所有其他伺服器。
- 次要伺服器。 每個 WFF 伺服器陣列包括一台或多台次要伺服器。 您對主伺服器所做的任何變更都會複製到伺服器叢集中的每個次要伺服器。
這顯示了這些伺服器角色與 Fabrikam, Inc. 預備和生產環境的關係:
在此情境中,預備環境和生產環境均設定為 WFF 伺服器陣列。 單一 WFF 控制器伺服器管理兩個場。 在每個伺服器群組中,對主伺服器的任何變更都會複製到每個次要伺服器。
在開始設定預備和生產環境之前,我們建議您閱讀以下文章以熟悉 WFF 2.0 的關鍵概念:
- 適用於 IIS 7 的 Web Farm Framework 2.0 概述
- 使用適用於 IIS 7 的 Web Farm Framework 2.0 設定伺服器陣列
- 適用於 IIS 7 的 Web Farm Framework 2.0 的系統和平台要求
任務概述
要完成本主題中的任務和演練,您將需要至少三台伺服器 — 一台 WFF 控制器、一台用於伺服器陣列的主 Web 伺服器以及一台或多台用於伺服器陣列的次要 Web 伺服器。 您可以隨時為 WFF 伺服器陣列新增更多次要伺服器。 在較高層級上,要為您的預備或生產環境建立和設定 WFF 伺服器陣列,您需要:
- 透過安裝網際網路Information Services (IIS) 7.5 和 WFF 2.0 建立控制器伺服器。
- 透過建立通用管理員帳戶並設定防火牆例外來準備主伺服器和次要伺服器。
- 使用控制器伺服器上的 IIS 管理器設定伺服器陣列。
- 使用 IIS 應用程式請求路由 (ARR) 或替代負載平衡技術設定負載平衡。
本主題中的任務和演練假設您從執行 Windows Server 2008 R2 的乾淨伺服器版本開始。 在開始之前,對於每台伺服器,請確保:
- Windows Server 2008 R2 Service Pack 1 與所有可用更新已安裝。
- 伺服器已加入網域。
- 伺服器有一個靜態IP位址。
注意
有關將電腦加入網域的詳細資訊,請參閱「將電腦加入網域並登入」。 有關設定靜態 IP 位址的詳細資訊,請參閱「設定靜態 IP 位址」。
建立 WFF 控制器伺服器
要建立 WFF 控制器伺服器,您需要安裝 IIS 7 或更高版本以及 WFF 2.0 或更高版本。 在幕後,WFF 使用 IIS Web 部署工具 (Web Deploy) 2.x 來同步場中的伺服器。 如果您使用 Web 平台安裝程式安裝 WFF,安裝程式將自動為您下載並安裝 Web Deploy。
要建立 WFF 控制器伺服器
下載並安裝 Web Platform Installer。
在 Web Platform Installer 3.0 視窗頂部,按一下「產品」。
在視窗左側的導覽窗格中,按一下「伺服器」。
在「IIS 7 建議設定」行中,按一下「新增」。
在「Web Farm Framework 2.x」行中,按一下「新增」。
按一下 [安裝]。 請注意,Web 平台安裝程式已將 Web 部署工具以及各種其他相依性新增至安裝清單。
查看授權條款,如果您同意這些條款,請按一下「我接受」。
安裝完成後,按一下「完成」,然後關閉「Web Platform Installer 3.0」視窗。
設定主伺服器和次要伺服器
在建立 WFF 伺服器陣列之前,您應該在構成該欄位的 Web 伺服器上完成一些準備任務:
- 新增防火牆例外以允許核心網路、遠端管理以及檔案和印表機共用功能與 WFF 控制器伺服器進行通訊。
- 在 Active Directory 中建立網域帳戶 (例如 FABRIKAM\stagingfarm),並將其新增至每台伺服器上的本機管理員群組。 建立伺服器陣列時,您將使用此帳戶作為伺服器陣列管理員帳戶。
有關如何在 Windows 防火牆中設定這些防火牆例外的詳細資訊,請參閱「適用於 IIS 7 的 Web Farm Framework 2.0 的系統和平台要求」。 有關其他防火牆系統的資訊,請參閱您的產品文件。
您可以使用下一個程序將網域帳戶新增至 Windows Server 2008 R2 中的本機管理員群組。 您應該在要新增至伺服器陣列的每台伺服器上執行此過程,換句話說,將相同的網域帳戶新增至主伺服器和每台次要伺服器上的本機管理員群組。
要將網域帳戶新增至本機管理員群組
在「開始」功能表上,指向「管理工具」,然後按一下「伺服器管理員」。
在「伺服器管理員」視窗的樹狀檢視窗格中,展開「設定」,展開「本機使用者和群組」,然後按一下「群組」。
在「群組」窗格中,按兩下「管理員」。
在「管理員屬性」對話方塊中,按一下「新增」。
在「選擇使用者、電腦、服務帳戶或群組」對話方塊中,鍵入 (或瀏覽) 您的網域帳戶 (例如 FABRIKAM\stagingfarm),然後按一下「確定」。
在「管理員屬性」對話方塊中,按一下「確定」。
您的伺服器現在已準備好新增至伺服器陣列。 對於主伺服器,您可以在建立伺服器陣列之前或之後設定伺服器以滿足您的應用程式要求 - 在這兩種情況下,WFF 都會透過將相同的產品、元件或組態部署到次要伺服器來同步伺服器伺服器。 為簡單起見,本教學課程假設您將在建立伺服器叢集後設定主伺服器。
建立 WFF 伺服器陣列
此時,您的所有伺服器都已準備好新增至 WFF 伺服器陣列:
- 您已在控制器伺服器上安裝了 WFF。
- 您已在主 Web 伺服器和次要 Web 伺服器上設定了防火牆例外。
- 您已將網域帳戶新增至主 Web 伺服器和次要 Web 伺服器上的本機管理員群組。
下一步是在 WFF 中建立伺服器陣列。 您可以從 WFF 控制器伺服器上的 IIS 管理員執行此操作。
要建立 WFF 伺服器陣列
在 WFF 控制器伺服器的「開始」功能表上,指向「管理工具」,然後按一下「網際網路資訊服務 (IIS) 管理員」。
在「連線」窗格中,展開本機伺服器節點,以滑鼠以滑鼠右鍵按一下「伺服器陣列」,然後按一下「建立伺服器陣列」。
在「建立伺服器陣列」對話方塊中,為伺服器陣列鍵入一個有意義的名稱 (例如,Staging Farm),然後選擇「佈建伺服器陣列」。
鍵入您在每台伺服器上新增到本機管理員群組的網域帳戶的使用者名稱和密碼。
按一下「下一步」。
在「新增伺服器」頁面上,鍵入主伺服器的完全限定網域名稱 (FQDN),選擇「主伺服器」,然後按一下「新增」。
此時,WFF 將嘗試使用您提供的認證來聯絡主伺服器。 如果連線成功,主伺服器將會新增至「新增伺服器」頁面上的表格。
注意
您可能已經注意到,預設會選擇「可用於負載平衡的伺服器」。 WFF 使用 IIS ARR 模組來實現負載平衡,從而在伺服器叢集中的 Web 伺服器之間分發請求。 在大多數情況下,如果您想改用第三方負載平衡解決方案,則只需清除「可用於負載平衡的伺服器」選項。
在「新增伺服器」頁面上,鍵入第一個次要伺服器的 FQDN,然後按一下「新增」。
對陣列中的任何其他次要伺服器重複步驟 7,然後按一下「完成」。
您的 WFF 伺服器陣列現已啟動並運作。 您在主伺服器上安裝的任何 Web 平台產品或元件,以及您部署到主伺服器的任何 Web 應用程式或內容,都會自動佈建到您的所有次要伺服器。
WFF 是一個廣泛而複雜的主題,您可以在適用於 IIS 7 的 Microsoft Web Farm Framework 2.0 網站上了解更多關於它的資訊。 不過,目前有兩個功能區域需要您注意:
- 應用程式佈建是將主伺服器中的內容 (例如 Web 應用程式和設定設定) 複製到伺服器陣列中的所有次要伺服器的過程。 例如,如果您將連絡人管理員範例解決方案部署到主預備伺服器,則 WFF 應用程式預配程序會將此解決方案佈建到所有輔助預備伺服器。 預設情況下,應用程式佈建程序每 30 秒執行一次。
- 平台佈建是將 Web 平台產品和元件從主伺服器同步到伺服器陣列中的所有次要伺服器的程序。 例如,如果您在主預備伺服器上安裝 ASP.NET MVC 3,平台佈建程序將使用 Web 平台安裝程式在所有輔助預備伺服器上安裝 ASP.NET MVC 3。 預設情況下,平台佈建程序每五分鐘執行一次。
您可以從 WFF 控制器伺服器上的 IIS 管理器管理基本應用程式和平台佈建設定。
探索應用程式和平台佈建設定
在 IIS 管理員的「連線」窗格中,選擇您的伺服器陣列。
在「伺服器陣列」窗格中,按兩下「應用程式佈建」。
如您所見,伺服器陣列目前設定為每 30 秒在主伺服器和次要伺服器之間同步 Web 內容和設定設定。
按一下「返回」,然後按兩下「平台佈建」。
如您所見,伺服器陣列目前設定為每五分鐘在主伺服器和次要伺服器之間同步 Web 平台產品和元件。
按一下 [上一步]。
若要強制伺服器陣列立即同步 Web 平台產品,請在「動作」窗格中按一下「佈建平台」。
注意
平台佈建可能需要一些時間。 安裝程式程序在伺服器叢集中的次要伺服器的背景執行。
一旦您有足夠的時間完成佈建流程,您就可以驗證新增至主伺服器的產品和元件現在是否已複製到次要伺服器上。 例如,您可以登入次要伺服器,並使用伺服器管理員視窗來驗證是否已安裝 Web 伺服器角色。
您也可以檢查已安裝的程式清單,以驗證是否已新增各種 Web 平台元件。
設定負載平衡
建立網路場時,您需要設定某種形式的負載平衡以在 Web 伺服器之間散佈 HTTP 請求。 這可以是 Windows Server 2008 網路負載平衡、IIS ARR 或基於第三方軟體或硬體的負載平衡解決方案。
WFF 旨在與 IIS ARR 緊密整合。 要利用此集成,您需要在 WFF 控制器伺服器上安裝 ARR 模組。 然後,您通常會透過設定網域名稱系統 (DNS) 記錄將所有 Web 流量導向至控制器伺服器。 然後,控制器伺服器將根據伺服器可用性和各種其他標準在場中的伺服器之間分配傳入請求。
注意
您不必將 ARR 與 WFF 一起使用;您可以將 WFF 設定為與第三方負載平衡解決方案搭配使用。 有關詳細資訊,請參閱「適用於 IIS 7 的 Web Farm Framework 2.0 概述」。
使用 ARR 進行負載平衡是一個複雜的主題,其中大部分內容超出了本教學課程的範圍。 但是,您可以使用下一個程序來安裝 ARR 模組並開始進行負載平衡。
要在 WFF 控制器伺服器上設定負載平衡
在 WFF 控制器伺服器上,啟動 Web 平台安裝程式。
在 Web Platform Installer 3.0 視窗頂部,按一下「產品」。
在視窗左側的導覽窗格中,按一下「伺服器」。
在「應用程式請求路由 2.5」行中,按一下「新增」。
按一下「安裝」,然後按照「Web 平台安裝」視窗中的說明進行操作。
安裝完成後,啟動 IIS 管理器,然後在「連線」窗格中按一下您的伺服器陣列節點。 請注意,「伺服器陣列」窗格中新增了幾個新圖示。
在「伺服器陣列」窗格中,按兩下「負載平衡」。
在「負載平衡」窗格中,選擇負載平衡演算法 (例如「目前請求最少」)。
注意
有關負載平衡演算法和其他設定設定的更多資訊,請參閱「應用程式請求路由模組」。
在 [動作] 窗格中,按一下 [套用]。
您現在已經為伺服器叢集中的伺服器設定了基本負載平衡。 如果您將所有網路場流量導向控制器伺服器,則請求將根據可用性和您選擇的負載平衡演算法在陣列中的伺服器之間指派。
有關如何使用 ARR 設定負載平衡的更多資訊,請參閱「應用程式請求路由模組」。
監控伺服器陣列
您可以透過控制器伺服器上的 IIS 管理員隨時監控伺服器陣列的運作狀況。 在「連線」窗格中,展開您的伺服器陣列,然後按一下「伺服器」。 中心窗格將顯示陣列中每台伺服器的摘要以及最近活動的追蹤記錄。
結論
您的 WFF 伺服器陣列現在應該已啟動並正在執行。 您可以設定主伺服器以支援您喜歡的任何部署方法 (有關詳細資訊,請參閱「進一步閱讀」部分),並且您的設定將複製到伺服器陣列中的每個次要伺服器上。
深入閱讀
有關設定和使用 WFF 各個方面的更多指導,請參閱「適用於 IIS 7 的 Microsoft Web Farm Framework 2.0」網站。