《一個可供參考的面向大型集團公司的云平臺架構解析》要點:
本文介紹了一個可供參考的面向大型集團公司的云平臺架構解析,希望對您有用。如果有疑問,可以聯系我們。
在過去的二十多年中,很多國內的大型集團公司都已經建立了非常龐大的業務信息系統,包括 OA 系統、ERP 系統、CRM 系統、HRM 系統以及各種行業應用系統,為了保證這些業務信息系統的長期穩定運行,還建設了一批支撐型信息系統,如監控系統、身份認證系統、安全運行中心等.這些信息系統通常在建設期間獨立招標采購、獨占軟硬件資源,不與其他信息系統集中招標、共享資源,導致資源浪費比較普遍,建設成本較高;運維期間則采取獨立運維的方式,不與其他信息系統共享運維人員、工具和技術,導致運維成本較高和運維效率偏低.當已有信息系統的規模越來越大,新的信息系統不斷增加,資源浪費、運維效率低下和成本高昂的問題就變得更加突出,因此,越來越多的大型集團公司引入私有云來解決這些問題.
然而,大型集團公司的 IT 基礎設施有明顯的特征,催生了相對獨特的云計算需求,所以需要結合大型集團公司的 IT 現狀和云計算需求來設計云平臺的整體架構.本文針對大型集團公司的云計算需求,以業內標準云平臺架構為基礎,提出了一個具有一定適應性的云平臺架構.
大型集團公司經過多年的信息化建設,其 IT 基礎設施逐漸形成了以下特點:
1)IT 組織結構比較復雜.大型集團公司在全國甚至全球設立子公司開展業務,集團層面設立總部級的信息化主管單位,子公司通常也會設立自己的 IT 部門,有些大型集團公司還會專門成立負責 IT 系統建設和運維的子公司.另外,大型集團公司多年來根據業務發展需求進行整合或拆分,IT 部門也會隨著被整合或拆分.這些因素直接導致了大型集團公司的 IT 組織結構非常復雜.一般情況下,一個子公司會承建和運維多個信息系統,并為每個信息系統設立專門的項目組.
2)數據中心存在層次結構.大型集團公司通常已經建成或計劃建設“兩地三中心”的總部級數據中心架構,并允許每個分公司就近建設區域級數據中心.總部級數據中心和區域級數據中心形成了數據中心的兩級架構,兩者通過廣域網互連.總部級數據中心通常部署整個集團公司范圍內都會用到的信息系統,地區級數據中心部署地區子公司專用的信息系統或對網絡延遲敏感的信息系統.
3)IT 資源異構程度較大.大型集團公司已經擁有了大量信息系統,每個信息系統是在不同時期由不同的項目組完成建設,所采購的軟硬件來自不同廠商的不同產品,導致大量異構 IT 資源并存.
4)IT 資源分配策略多樣化.大型集團公司中的每個信息系統的資源分配策略可能會不一樣,核心系統需要采用最佳性能分配策略,非核心系統可以采用最佳使用率分配策略,有些性能要求高的應用需采用物理機部署,有些性能要求較低的應用則可以采用虛擬機部署.
5)遺留信息系統比較多.大型集團公司在建設云平臺之前就已經有了監控系統、ITSM 系統、CMDB、身份認證系統和安全運行中心等支撐型信息系統,這些支撐型信息系統提供的功能應當屬于完整云平臺的一部分,但在云平臺建設之前就已經存在了,所以建設云平臺時沒有必要重復建設,而是要考慮如何與其進行集成.
大型集團公司 IT 基礎設施具備的特點決定了對云平臺的業務需求也有其相對獨特的地方.
1)云平臺的租戶體系需要設計為多級結構.如圖 1 所示,云平臺架構中需要設計多級租戶,根租戶對應的是整個集團公司,統一管理和分配集團公司范圍的所有云資源,即云平臺所管理的所有資源.一級租戶對應子公司級別,是信息系統的承建和管理單位,一個子公司可以管轄多個信息系統.二級租戶可對應為信息系統級別,是信息系統的具體建設和運維項目組;針對大的子公司還可以將二級租戶對應到其內部的部門,然后在其下面再設立對應到信息系統的三級租戶.當底層租戶需要資源時,應當向上級租戶申請資源配額,上級租戶查看本租戶當前可用的資源配額,如果足夠就可以分配給下級租戶,如果不夠就再向更上一級租戶申請資源配額.根租戶的資源配額即為云平臺的所有可用資源的集合,如果根租戶的資源配額不夠的話就意味著需要及時進行資源擴容.這種多層級的租戶體系結構即是設計模式中 Composite 模式的具體應用.
圖 1 – 云平臺租戶體系
2)云平臺的資源管理體系需要考慮數據中心的兩級架構.如圖 2 所示,云平臺需要設計兩級資源管理體系,本地資源管理模塊管理和控制本數據中心內的資源,將本數據中心的資源清單和資源使用情況上報全局資源管理模塊,接收并執行全局資源管理模塊下發的指令;全局資源管理模塊收集并匯總各個本地資源管理模塊上報的資源信息形成資源的全局視圖,統一管理和調度位于所有數據中心的資源,下發指令給本地資源管理模塊.從部署角度來看,本地資源管理模塊會部署在每一個數據中心,包括總部級數據中心和地區級數據中心,而全局資源管理模塊僅部署在總部級數據中心.
圖 2 – 云平臺資源管理體系
3)云平臺的資源管理模塊需要支持各種異構資源.由于大型集團公司的異構資源非常多,資源管理模塊應避免直接通過 API 或 CLI 方式去操作各種底層資源,而是在中間增加一個資源適配器,讓資源適配器去適配底層各種不同廠商不同型號的資源,資源適配器為資源管理模塊提供統一的資源管理 API,如圖 3 所示.如果需要適配新的異構資源,只需要將資源適配器與之進行適配集成,無需修改資源管理模塊的代碼.這其實就是設計模式中 Facade 模式的具體應用.
圖 3 – 資源適配器
4)云平臺需要支持資源分配策略的自定義.云平臺會內置一些常見的資源分配策略,但云平臺不可能內置所有的資源分配策略,云平臺要允許信息系統的管理員根據其業務需求自定義資源分配策略,因此云平臺需要設計一個策略引擎模塊,負責策略的定義、解析和執行.這也是設計模式中 Strategy 模式的具體應用.
5)云平臺需要與已有的支撐型信息系統集成.云平臺本身也屬于支撐型信息系統,完整的云平臺需要提供監控、身份認證、日志分析等功能,但往往這些功能已經存在于已有的支撐型信息系統中,設計云平臺時要充分考慮復用這些已有的支撐型信息系統,保護已有 IT 投資,這就需要云平臺預留各種集成接口,以便與這些系統進行數據交換和應用集成.這里面會用到設計模式中的 Adapter 模式.
針對大型集團公司的上述云計算業務需求,同時參考工業界云計算平臺架構和相關國際標準,本文提出了如圖 4 所示的云平臺架構.
該云平臺架包含資源適配器、資源池、資源管理模塊(包括本地資源管理模塊和全局資源管理模塊)、策略引擎、流程引擎、資源編排模塊、服務管理模塊、門戶模塊、運營管理模塊、運維管理模塊和插件管理模塊.下面的資源適配器負責適配、組織、整合底層異構 IT 資源,從而構建出各種資源池,資源適配器為上層資源管理模塊提供了統一的資源管理 API.資源管理模塊負責對資源池進行管理,按照資源的生命周期對資源池中的資源進行管理,根據用戶的需求從資源池中分配、調度資源.
為了更靈活地分配和調度資源,該架構設計了流程引擎、策略引擎和資源編排模塊.流程引擎負責將各種操作步驟串接在一起,實現各種自動化流程;策略引擎方便管理員根據業務需求自定義資源分配策略;資源編排模塊負責將各種云資源進行編排和對接形成彼此關聯的資源組合模板,以實現復雜信息系統的快速部署或擴展.服務管理模塊按照云服務的生命周期對云服務進行管理.門戶模塊為云平臺的用戶、租戶管理員和平臺管理員分別提供了統一的操作界面.運維管理模塊負責云平臺和資源池的技術運維,遵循 ITIL v3 標準,面向機器和系統.運營管理模塊負責云平臺的業務運營,面向用戶和租戶.插件管理模塊為云平臺提供了插件機制,通過各種插件與已有的支撐型信息系統集成.各個業務信息系統根據業務需求識別出所需云服務,在云平臺中完成服務的制作和發布,形成服務目錄,并通過申請云服務完成信息系統的部署.
圖 4 – 云平臺架構
大型集團公司擁有大量異構網絡、存儲、虛擬化和物理機資源.網絡資源包括來自各種廠商、各種技術規格的防火墻、負載均衡、網絡交換機等;存儲資源包括來自不同廠商、不同型號的存儲陣列和 SAN 交換機;虛擬化資源包括來自不同廠商、不同版本的 Hypervisor;物理機資源包括來自不同廠商、不同型號的 x86 服務器或小型機.為了給云平臺的資源管理模塊提供統一的 API 接口,云平臺架構中針對每一種類型的資源分別設計一個資源適配器,包括網絡資源適配器、存儲資源適配器、虛擬化適配器和物理機適配器.這些適配器為資源管理模塊屏蔽了底層資源的異構性和復雜性,資源管理模塊只需要調用適配器的 API,再由適配器去實際操控底層資源.另外,適配器通過適配各種異構資源對這些資源進行組織、整合、池化,形成網絡資源池、存儲資源池、虛擬服務器資源池、物理服務器資源池.當然,云平臺需要按照一定的規則將具備相同能力和屬性的資源放到同一個資源池里面,比如將性能高的存儲資源放到金牌存儲資源池,性能中等的存儲資源放到銀牌存儲資源池.從資源管理模塊的視角,看到的是各種資源池,不會看到底層的異構資源.
資源池之上是資源管理模塊,包括本地資源管理模塊和全局資源管理模塊.本地資源管理模塊專注于管理和控制本地數據中心的資源池,將資源池中的資源納管到云平臺,負責執行全局資源管理模塊下發的資源部署命令,對所轄資源進行分配、調度、擴展和監控,并將結果反饋給全局資源管理模塊,資源分配是指系統部署時為系統選擇最佳的資源,資源調度是系統運行期間,按照業務量的增減對資源量進行縱向或橫向伸縮.全局資源管理模塊收集并匯總各個本地資源管理模塊上報的資源信息形成資源的全局視圖,可以按照租戶、數據中心、資源類型等維度查看全局視圖;全局資源管理模塊統一監控、分配和調度位于不同數據中心的資源;全局資源管理模塊還負責統一處理用戶的資源部署請求,給各個本地資源管理模塊下發資源分配和調度命令.本地資源管理和全局資源管理構成了兩級資源管理體系,實現資源的集中式管控和分布式部署的有效結合.
策略引擎負責資源調配策略的定義、解析和執行,實現基于策略的自動化分配和調度,如果策略倉庫中的策略不能滿足業務要求,還可以允許管理員定制策略,讓某個信息系統按照特定的策略進行資源的分配和調度,并可以將定制的策略存儲到策略倉庫中給其他信息系統復用.策略包含分配策略和調度策略,分配策略是指信息系統部署時選擇最佳資源的策略,調度策略是指系統運行時,根據系統維護的要求或業務量的增減對資源進行調整和遷移的策略.
流程引擎負責將資源分配、調度、配置和運維過程中涉及的實際操作步驟進行串接,以實現操作步驟的自動流轉,進一步實現復雜的自動化流程,包括服務器自動化流程、網絡自動化流程、存儲自動化流程等.流程引擎允許管理員定義和編排流程,在實際資源分配、調度、配置和運維過程中,流程引擎對涉及的流程進行解析并執行,并為自動化流程提供可配置的能力.管理員創建的流程可以存儲到流程倉庫以實現流程復用.
服務管理按照云服務的生命周期對其進行管理,允許管理員定義云服務的部署模型和功能模型,并為部署模型設置一定的自動化流程和分配策略,允許管理員設置云服務的申請界面和用戶輸入參數.當用戶申請了所需的云服務之后,服務管理模塊對其進行服務開通,將服務開通涉及的自動化流程告知流程引擎,由流程引擎對其進行解析和執行,并將服務開通涉及的資源分配策略告知策略引擎,由策略引擎對其進行解析和執行.策略引擎會將資源分配請求發到全局資源管理模塊,最后返回給服務管理模塊,至此完成服務開通的動作.服務開通之后,云平臺要通過規范的運維保障工作確保所交付服務的 SLA 滿足用戶要求.
資源編排模塊提供圖形化的界面讓管理員(租戶管理員或平臺管理員)對云平臺中的各種云資源進行配置、組合、編排和串接,形成資源模板,以適配特定信息系統的拓撲結構.管理員定義好了資源模板后,可以發布為一個新的復合型云服務.用戶申請該復合型云服務即觸發該服務的開通工作,資源編排模塊會解析資源模板及用戶輸入參數生成對資源類型、屬性和數量的具體要求,然后傳遞給全局資源模塊進行資源的分配和部署.管理員可以基于模板倉庫中內置的模板進行修改以快速定義復合自己需求的資源模板,創建好的資源模板也可以存儲到模板倉庫以實現復用.
門戶模塊提供了用戶門戶、租戶管理門戶和平臺管理門戶.用戶門戶為云服務的最終用戶提供了直觀易用的自服務界面,在該界面中最終用戶可以完成服務申請、資源查看、資源操作等工作.租戶管理門戶為租戶管理員提供了直觀易用的自助管理界面,在界面中租戶管理員可以申請配額、創建用戶、定義本租戶可見內的服務、定義資源模板、制定適應本租戶的分配策略等.平臺管理門戶為云平臺管理員提供了直觀易用的操作界面,幫助其完成系統運維和運營領域的各項工作.
運維管理模塊負責云計算平臺的系統運維功能,遵循 ITIL V3 標準,提供容量管理、性能管理、安全管理和日常管理等功能.容量管理通過對資源的歷史運行狀況進行統計分析,并按照容量預測模型對未來的資源需求進行預測.性能管理通過實時采集資源的性能指標實現對資源運行狀況的監控,如果指標超過一定的閾值,則產生告警事件,并調用相應的事件處理流程.安全管理包括服務器安全、存儲安全、數據安全、網絡安全和虛擬化安全等方面的保障工作.日常管理包括故障管理、問題管理、配置管理、系統管理、監控管理和變更管理.如果運維管理模塊中所涉及的功能在已有的支撐型信息系統中已經存在,就沒有必要在新建云平臺中實現該功能,而是通過插件管理模塊與已有的支撐型信息系統的相應功能模塊進行集成.
運營管理模塊負責云計算平臺的業務運營功能,包括用戶管理、租戶管理、配額管理、權限管理、計量與計費管理等功能.用戶管理對用戶進行創建、分組和授權等.租戶管理負責對多級租戶進行管理和配置,維護租戶和租戶之間的父子關系、租戶和用戶之間的使用關系、租戶和配額之間的關聯關系等.配額管理負責把資源分配給各級租戶,確保各級租戶對資源的使用不能超過配額.權限管理負責為用戶指定操作和數據權限.計量與計費管理對租戶的資源使用情況進行計量,保存計量數據,定期生成計量報告,計量信息包括資源的類型、資源的使用量及使用時間;平臺管理員可為各種資源設定費率,系統可以基于計量信息及費率,產生租戶的費用清單.
插件管理模塊主要是為了與已有的支撐型信息系統進行集成而設計的,插件管理模塊設置了插件機制,允許已有的支撐型信息系統通過插件為云平臺提供必要的功能,同時也允許業務其他信息系統為云平臺補充額外的功能,云平臺通過各種插件與已有的支撐型信息系統和其他業務信息系統進行數據交換和應用集成,例如,云平臺的運維管理模塊不用實現監控功能,而是通過監控插件復用遺留監控系統中的相關功能.
本文提出的云平臺架構為適應大型集團公司 IT 基礎設施的特點,專門設計了多級租戶管理體系、兩級資源管理體系、資源適配器模塊、插件管理模塊和策略引擎等,能夠在一定程度上滿足大型集團公司的云計算業務需求,但同時也增加了云平臺架構的復雜性,進而增加了云平臺設計和開發的難度,大型集團公司參考該云平臺架構時需要詳細評估涉及的工作量和技術風險.另外,該架構側重于 IaaS 層面,未考慮 PaaS 的特殊性,據此進行 PaaS 平臺架構設計時也需要補充相關的功能模塊.
文章來自微信公眾號:細說云計算
轉載請注明本頁網址:
http://www.snjht.com/jiaocheng/3741.html