邏輯數據中心設計器簡介 — 第一部分

邏輯數據中心設計器簡介 — 第一部分

 

發佈日期: 6/14/2005 | 更新日期: 6/14/2005

Mickey Williams
Neudesic LLC

摘要:瞭解該 Team Architect 版設計器如何幫助您對數據中心的所有操作方面進行建模,從而更方便地構建和部署數據中心。

*
本頁內容
簡介 簡介
瞭解邏輯數據中心設計器 瞭解邏輯數據中心設計器
數據中心和網絡難題 數據中心和網絡難題
創建邏輯數據中心關係圖 創建邏輯數據中心關係圖
小結 小結

簡介

邏輯數據中心設計器 (Logical Datacenter Designer) 用於創建描述數據中心的策略和邏輯結構(包括,影響應用程序系統部署到數據中心的服務器、防火牆、通信路徑、安全約束和其他配置要求)的模型。邏輯數據中心設計器與 Visual Studio Team System 中包含的其他分佈式系統設計器集成在一起。所有設計器都平衡利用一個基於 XML 的公共元文件格式,稱爲系統定義模型 (SDM)。邏輯數據中心設計器是 IT 專業人員和系統架構師之間的有效通信工具。

瞭解邏輯數據中心設計器

邏輯數據中心設計器是 Visual Studio Team Architect 所包含的四個分佈式系統設計器中的一個,可以用於構建數據中心的邏輯模型。使用分佈式系統設計器創建的模型,用於確保將分佈式系統設計爲可以高效、安全地部署到數據中心。作爲 Microsoft 動態系統方案 (DSI)(一組簡化構建、開發和部署動態應用程序與分佈式應用程序任務的產品)的一部分,這些設計器是最早發佈的開發工具。

通過一種能夠在系統架構師、基礎結構架構師、開發人員和 IT 操作人員之間輕鬆共享的方式,邏輯數據中心設計器創建描述數據中心操作方面(例如,服務器、通信路徑和操作策略)的模型。當構建和部署跨多個服務器的連接系統時,生成的模型則描述有關的數據中心的各方面。該模型並不需要描述整個數據中心;它通常可以更合理地建模數據中心的某個部分。例如,可以使用單獨的模型來描述數據中心的 eCommerce、B2B 和 Intranet 宿主部分。Visual Studio Team Architect 隨附的其他設計器則權衡邏輯數據中心關係圖 (LDD) 中的信息,從而確保分佈式系統符合數據中心內定義的策略和約束(一個稱爲部署設計 的概念)。

通信和集成是分佈式系統設計器的主要功能。所有設計器都共享一個稱爲系統定義模型 (SDM) 的公共文檔元模型,該元模型用於存儲模型信息。共享一個公共文檔格式,可以簡化在驗證設計時簡化來自多個設計器的集成信息的任務。因爲 LDD 可以包含在 Visual Studio 解決方案中,所以它可以像任何其他文檔一樣共享、版本化和跟蹤。

系統定義模型

如前所述,Visual Studio Team Architect 中包含的所有體系結構設計器都利用系統定義模型 (SDM)。SDM 文檔使用 XML 來存儲自己的信息,以便輕鬆地與第三方工具和過程相集成。在該模型內部,網絡元素和約束作爲 XML 節點進行建模。因爲 SDM 是 XML 文檔,所以可以利用現有的工具和類庫來使用分佈式系統設計器所創建的模型中的信息。

在 XML 編輯器中打開一個 SDM 文檔,可以顯示一個根節點名爲 SystemDefinitionModel 的 XML 文檔,該文檔包含一個 SystemDefinition 節點樹:

<SystemDefinitionModel Name="MyDatacenter1"...>
 <SystemDefinition Name="MyDatacenter1" ...>
   <SystemDefinition Name="IISWebServer1" ...>
     ...
   </SystemDefinition>
   <SystemDefinition Name="Zone1" ...>
     ...
     <Subsystem Name="DatabaseServer1" ...>
       ...
     </Subsystem>
     <Containment Name="..." ChildMember="DatabaseServer1" />
      ...
   </SystemDefinition>
 <SystemDefinition>
</SystemDefinitionModel> 

實際的 SDM 文檔會包含使其更冗長的版本和命名空間信息,但一般想法是,使用 SystemDefinition 節點來建模邏輯服務器和邏輯模型中的其他形狀。每個節點都包含諸如約束、設置以及與其他節點的關係這樣的信息。Zone 節點可以進行嵌套,以允許區域形狀將邏輯服務器(甚至嵌套的區域)作爲子系統包含。

數據中心和網絡難題

在數據中心內,應用程序主機和網絡拓撲可以根據多種目的設計:

組織,用一致的邏輯方式來部署應用程序。

性能,意味着應該將應用程序部署到已爲其使用而進行了優化的應用程序主機和網絡區段。

安全,以一種最大化安全性和最小化威脅的方式來部署應用程序。

遺憾的是,通常由基礎結構架構師用來設計和文檔化數據中心的工具,並沒有與大多數系統架構師和開發人員所使用的工具相集成。通常,典型的基礎結構關係圖中提供的某些信息對於開發人員而言沒有實際用處,例如,IP 地址、vlan 子網掩碼等。因此,就產生了妨礙通信的不協調阻力。對於基礎結構架構師而言,很難文檔化數據中心內實施策略的每個方面,特別是在其數據中心具有服務器、防火牆和通過一段較長時間獲得的其他網絡元素的組織之中。對於系統架構師而言,也很難文檔化由許多經過一段時間創建的單獨的應用程序所構成的分佈式系統的每個可能的操作需求。

邏輯數據中心設計器用於將企業的操作目標放置到着重於數據中心邏輯結構的模型之中。通過使用由系統架構師和開發人員所用的相同文檔元模型和工具,可以減少通信障礙並且可以更有效地交流有關數據中心要求和功能的信息。

數據中心的邏輯描述可以在多個開發項目之間創建和共享,從而使多個小組能夠利用由基礎結構架構師(他們負責數據中心的網絡拓撲或針對開發的某部分網絡)維護的描述。

在系統設計和構建的不同階段,可以根據邏輯數據中心來利用邏輯系統驗證當前的系統設計。

創建邏輯數據中心關係圖

Visual Studio Project 菜單中選擇 Add New Distributed System Diagram 可以啓動邏輯數據中心設計器。從可用的關係圖列表中選擇 Logical Datacenter Diagram 之後,Visual Studio 會將新的關係圖添加到 Solution Items 文件夾中。

通常,邏輯數據中心關係圖在您的源項目之外進行創建和維護,並由負責數據中心體系結構的組或個人擁有。雖然模型可以由開發團隊進行維護,但是隻有當模型由基礎結構架構師或其他 IT 專業人員創建時才能帶來實際利益。

設計師畫布就像一個設計表面,可以在其中拖放和排列邏輯數據中心元素以描述您的模型。在一個解決方案中可以存在多個畫布。除了所有的 Visual Studio 設計器共享的設計畫布和 Properties 窗口以外,還有兩個在構建邏輯數據中心模型時可以使用的額外設計器組件:

工具箱:工具箱包含許多可在設計畫布上拖放的預定義元素,包括區域、邏輯服務器(應用程序主機)、連接端點及其他元素。

設置和約束編輯器 (SCE)SCE 用於定義邏輯數據中心內元素的要求和責任,並且爲這些元素指定配置設置值。

工具箱

所有分佈式系統設計器都包括可用於創建關係圖的預定義工具箱項目。當前版本的邏輯數據中心設計器在工具箱中提供了五個內置數據中心元素:

DatabaseServer:在數據中心內宿主數據庫的服務器。

GenericServer:數據中心內未指定類型的服務器,通常可以擴展以表示一個自定義服務器類型。

IISWebServer宿主 ASP.NET Web 應用程序的 Web 服務器。

WindowsClient:企業中的臺式機,用於建模對最終用戶的計算機約束。

Zone:與數據中心的其他部分相分隔的邏輯邊界,如防火牆。區域可以在其他區域中進行嵌套。

工具箱還包含在其他數據中心元素的邊緣建模通信點的端點元素。每個端點類型都有一個唯一的形狀;服務器端元素是實心的,而客戶端元素是空心的。以下爲六個端點元素:

DatabaseClientEndpoint:數據庫連接的用戶。

GenericClientEndpoint:非特定連接的客戶端。

GenericServerEndpoint:非特定連接的服務器端。

HTTPClientEndpoint:HTTP 連接的客戶端。

WebSiteEndpoint:HTTP 連接的服務器端。

ZoneEndpoint:區域邊緣的通信端點。

雖然該列表展示了一組默認的常用網絡元素(例如,應用程序主機和協議),但每項還有許多其他類型。通過邏輯數據中心設計器和 SDM,您可以非常靈活地使用擴展性 SDK 來定義附加協議、邏輯服務器和其他元素。

設置和約束編輯器

設置和約束編輯器用於定義邏輯數據中心關係圖、應用程序關係圖和系統關係圖中所包含元素的各個方面。這是 Visual Studio Team Architect 中所有的分佈式系統設計器使用的編輯器。設置可以包含配置信息,例如,邏輯服務器上安裝的操作系統和 .NET 運行庫的版本。它們還可以包含策略約束,例如,禁止 ASP.NET Web 應用程序在一組邏輯服務器上運行。

可以將約束視爲一個要求,它必須由部署在特定邏輯服務器上的所有應用程序進行維護。邏輯數據中心關係圖中的單個元素可以通過多種方式進行限制,以正確建模數據中心內存在的策略。約束可能需要或限制某些類型的通信,可能需要特定的安全特徵,也可能完全禁止某個應用程序類型。

約束有三種類型:

隱式約束 包含在拖放到設計表面上的元素形狀中,並且不需要使用邏輯數據中心設計器進行編輯。將 IIS 服務器形狀拖放到設計表面時,您就能看到一個隱式約束的示例。邏輯服務器允許的文件擴展名的映射會爲部署到工具箱的應用程序創建隱式約束。隱式約束可以通過擴展性 SDK 進行創建。

預先定義的約束是通過設計器進行統一控制的約束組。例如,您可以通過預先定義的約束來控制某個 ASP.NET 應用程序是否能夠寄宿在邏輯服務器上。

用戶定義的約束是通過創建一個或多個設置從而構成一個約束的方式來直接創建的。雖然用戶定義的約束提供了最大的靈活性,並且可以用於創建與預先定義的約束相同的要求,但是它也可能會創建與預先定義的約束髮生衝突的用戶定義的約束。

設置和約束編輯器通常停靠在邏輯數據中心關係圖的下邊緣之下。如果它未顯示,則可以從任何關係圖元素的 context 菜單中顯示它。

小結

邏輯數據中心設計器是 Visual Studio Team Architect 的一個關鍵組件,用於創建數據中心的邏輯模型。這些模型可以由系統架構師和基礎結構架構師進行共享,從而使他們能夠使用一組公共的工具來交流要求和期望。

Mickey Williams 是 Neudesic 的首席顧問。Neudesic 位於加州南部,它是 Microsoft 領先的 .NET 專業服務合作伙伴之一。Mickey 在各種平臺上構建關鍵任務的應用程序方面有豐富的經驗,他編寫或與他人合著了九本有關 Windows 編程的書籍。他與 .NET 相關的工作又重回到最初的公共出版方面。目前,他專門從事於構建和開發利用 .NET Framework 的關鍵任務應用程序,特別是在 ASP.NET、XML Web 服務和智能客戶端方面。

轉到原英文頁面

發佈了47 篇原創文章 · 獲贊 1 · 訪問量 13萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章