微軟專家深度解析:Azure運行模式 |
發布時間: 2012/8/1 11:27:24 |
Mark Russinovich——微軟公司的技術人員,Azure平臺開發主要人員和著名Windows專家,他在微軟專業開發者大會(PDC)上介紹了Azure平臺的基本情況以及用戶與Azure進行交互的真實用戶體驗。
Azure基礎設施 Azure是基于微軟公司商業基礎設施而構建的。“微軟公司的刀片服務器”來自于多個制造商的定制OEM刀片服務器,其中包括Dell公司和HP公司。目前,微軟公司將其數據中心按集裝箱化構建并四處展示。 針對于系統管理人員,微軟公司在2006年有一個共享I/O和刀片服務器設計的雛形介紹。 Azure考慮了計算機功率每個節點的機柜,并在每個機柜上安排了一個開關。每個包括了服務器、頂部機柜開關的節點被認為是“故障域”(詞語解釋參見下文的詞匯表)。也就是說,它是一個可能發生故障的點。由一個聚合器和負載均衡器對若干組節點進行管理,所有都反饋至Azure的運行中心:結構控制器(FC)。 FC從“Red Dog Front End”(RDFE)獲得其步進命令。RDFE的取名源自于Dave Cutler的原Red Dog項目,該項目最終成就了Azure。RDFE的運行角色是類似于某種路由器,用于管理進出負載均衡器和結構控制器的各項請求和流量。 Russinovich說,開發團隊在某個開發日通過了一個名為“Pink Poodle”的設置。Red Dog似乎更為合適,Russinovich并未明確介紹“Pink Poodle”到底是哪一種設置。 Azure如何工作 Azure工作流程如下:
結構控制器 結構控制器擔負了Azure中所有的重大任務。它規定、存儲、提供、監控并命令組成Azure的虛擬機(VM)。它是一個“遍布數據中心節點和故障域的分布式狀態應用”。 這意味著在不同機柜中運行著大量的結構控制器實例,其中有一個被設置成主控制器。如果它發生故障,那么另外一個實例將從空閑中被喚醒。如果整個結構控制器都發生故障,即便在沒有過多的管理下所有由它啟動的運行程序(包括節點)都將保持運行狀態,直至它恢復重新聯機。如果你在Azure中啟動一項服務,即使整個結構控制器停止而您的服務也不會關閉。 結構控制器將使許多業務自動化運行,甚至包括新硬件安裝。新的刀片服務器根據PXE進行配置,而且結構控制器中有PXE啟動服務器。它啟動一個下載主機操作系統(OS)的“維護鏡像”,下載的托管操作系統包括了Azure主機的所有部件。Sysprep運行,系統作為一個獨立機器重啟,同時FC將其納入文件夾。 結構控制器是一個修改后的Windows Server 2008操作系統,作為主機操作系統和標準的預配置網絡和工作角色實例。 角色分配以后會發生什么 FC有兩個主要目標:滿足用戶請求和策略,優化和簡化部署。它自動完成所有的相關任務,“在運行中學習”數據中心的狀態,Russinovich說。 登錄Azure并請求一個新的“網絡角色“實例,將會發生什么?該門戶入口將您的請求發送至FDFE。根據您所設置的參數、您的位置以及最接近的FC等,RDFE也向結構控制器發出同樣的請求。結構控制器掃描合適可用的節點并搜尋(在標準情況下)不擁有同一故障域的兩個節點,從而滿足容錯性要求。 這兩個節點有可能位于兩個相互臨近的機柜中。Russinovich表示,結構控制器在優化性能方面考慮了網絡接近和可用連接等因素。除非有需要或特別指定,Azure一般不會在兩個不同的設施中選擇節點。 結構控制器發現新的未使用的節點資源后,將重新修改主機中的角色定義文件。主機操作系統請求創建虛擬機和三個虛擬硬盤驅動器(VHD):一個用于操作系統鏡像的存儲“差異”的虛擬硬盤驅動器(D:\),一個用于存放用戶臨時文件“資源”的虛擬硬盤驅動器(C:\),以及一個存放角色特定文件的角色虛擬硬盤驅動器(硬盤盤符為下一個可用的驅動器盤符)。主機代理啟動虛擬機之后,我們就可以開始使用了。 有趣的是,直至實例接受到它的首個外部HTTP通訊(GET)負載平衡器才發揮作用,然后實例通過路由連接到一個外部端點及網絡。 本文出自:億恩科技【www.artduck.net】 |