孟凡立
(江蘇師范大學 信息網絡中心,江蘇 徐州 221116)
傳統(tǒng)數(shù)據中心物理、邏輯架構復雜,業(yè)務與基礎設施緊密關聯(lián),靈活性差,應用系統(tǒng)運行維護嚴重受制于硬件,造成數(shù)據中心的運行、維護和管理復雜,硬件資源利用率低,TCO(Total Cost of Ownership,總擁有成本)過高。隨著數(shù)據中心規(guī)模的不斷擴展,越來越多的業(yè)務、功能和協(xié)議在網絡上進行疊加,網絡設備越來越多,設備類型不斷增加,安全策略也越來越龐大和復雜,網絡管理變得更加繁瑣,極大地增加了數(shù)據中心運維的難度,延緩了數(shù)據中心服務上線時間。近年來,隨著云操作系統(tǒng)、虛擬化、軟件定義網絡、超融合等技術在高校數(shù)據中心的應用,數(shù)據中心的建設質量與運行管理水平有效提升,推動高校數(shù)據中心向全軟件定義的數(shù)據中心演進?!败浖x”技術從最初的軟件定義網絡(Software Defined Network,SDN)開始,逐步發(fā)展到軟件定義存儲(Software Defined Storage,SDS)和軟件定義數(shù)據中心(Software Defined Data Center,SDDC)[1]。軟件定義數(shù)據中心通過軟件將數(shù)據中心的計算、存儲、網絡、安全等重要基本構建模塊虛擬化,并將各種不同的物理平臺轉變?yōu)榭梢酝ㄟ^軟件整合成統(tǒng)一管理的單一實體。
SDDC 概念最早于2012 年由VMware 首先提出,通過軟件的方式實現(xiàn)了整個數(shù)據中心內部基礎設施資源的抽象、池化、部署和管理,滿足了定制化、個性化的應用和業(yè)務需求,在數(shù)據中心層面為智慧校園提供了強有力的資源支撐[2]。軟件定義數(shù)據中心徹底改變了IT(Information Technology,信息技術)服務的交付方式,IT資源以完整的數(shù)據中心服務形式進行快速交付,包括計算資源、網絡資源、存儲資源、安全服務等。軟件定義數(shù)據中心用戶從申請到獲得服務的時間從原來的幾天甚至幾個月,縮減到幾分鐘就可以獲取到按需定制的個性化數(shù)據中心服務,根據用戶需要可以提供不同等級、成本的服務。在軟件定義數(shù)據中心中,數(shù)據中心核心基礎設施都完成了虛擬化,能以服務的形式交付,并由軟件來控制,這是一種高靈活性、高彈性、高可擴展性和高安全性的數(shù)據中心模式,被越來越多的高校認可。
目前多數(shù)高校已經完成了服務器虛擬化工作,通過在傳統(tǒng)物理服務器上安裝虛擬化管理軟件,將服務器的CPU、內存和硬盤等資源通過虛擬化管理軟件提供給操作系統(tǒng),一臺物理服務器上可以運行多個操作系統(tǒng),一個操作系統(tǒng)也可以調用多臺物理服務器的資源。虛擬化技術使傳統(tǒng)物理架構在數(shù)據中心建設中陸續(xù)被虛擬化架構替代,通過虛擬化技術實現(xiàn)了資源的動態(tài)分配和服務的高可用性,大幅提升了數(shù)據中心管理效率,降低了運維成本,很多高校一個技術人員可以管理維護幾百臺虛擬機,這在數(shù)據中心全面虛擬化之前是不可能完成的任務。隨著智慧校園的建設,數(shù)據中心規(guī)模不斷擴大,因為所有虛擬機的存儲全部來自于集中式存儲,其性能受集中式存儲控制器數(shù)量的影響,不可能隨著應用需求的擴展而線性增加。由于數(shù)據無法快捷地在不同存儲設備之間進行遷移,無法有效解決存儲設備的性能孤島和數(shù)據孤島問題,從而嚴重影響了數(shù)據中心的可擴展性和安全性,當存儲設備發(fā)生故障時,數(shù)據中心的所有服務將全部停止工作。另外,由于應用、服務器、網絡和存儲是分離的,造成多個系統(tǒng)管理員分別管理,無法通力合作,運維和管理效率低下。
高校數(shù)據中心資源利用率低的問題隨著服務器的虛擬化得到了一定改善,但大量數(shù)據中心的服務器、存儲利用率仍然長期停留在25%以下,而全球數(shù)據中心服務器的平均利用率僅為15%[3]。僅實現(xiàn)服務器虛擬化,數(shù)據中心的交換機、存儲、安全等設備沒有實現(xiàn)虛擬化,系統(tǒng)內部硬件資源的負載很不均衡,由于各種設備之間處于隔離狀態(tài),資源無法在設備之間流動,造成資源分布、使用不均衡,利用率低。通過服務器虛擬化,計算資源實現(xiàn)了動態(tài)調度,服務器硬件利用率得到了一定提升,但是由于資源調度的過程中需要使用大量資源,虛擬機遷移時間較長,存儲、網絡等資源無法有效共享,無法有效支撐計算資源的靈活調度,從而無法實現(xiàn)整個數(shù)據中心資源的靈活調度。另外,隨著高校智慧校園建設要求的不斷提高,數(shù)據中心的性能、擴展能力和可靠性都受到了嚴峻挑戰(zhàn),受CPU(Central Processing Unit,中央處理器)協(xié)同工作機制、集中存儲的IOPS(Input Output Operations Per Second,每秒輸入輸出量)性能瓶頸等因素影響,在現(xiàn)有架構下,計算性能不可能無限擴充,為了獲取更高的計算能力,只能使用更多的設備借助交換機進行連接,從而達到擴展系統(tǒng)能力的目的。由于設備之間的網絡傳輸能力比設備內部數(shù)據總線傳輸能力低,網絡協(xié)議也更為復雜,導致數(shù)據傳輸效率更低,為了提升數(shù)據中心設備的利用率,通過基于集中式存儲架構的虛擬化數(shù)據中心解決方案已不能解決數(shù)據中心目前面臨的問題,必須對數(shù)據中心整體架構進行調整,才能滿足目前智慧校園建設的新需求。
軟件定義數(shù)據中心把傳統(tǒng)數(shù)據中心的硬件資源進行虛擬化和軟件化,數(shù)據中心的計算、網絡、存儲、管理、安全等資源都可以通過軟件進行定義,從而實現(xiàn)更加靈活配置的動態(tài)架構,同時可以通過豐富的應用程序編程接口(Application Programming Interface,API)對外提供服務[2]。軟件定義數(shù)據中心相較傳統(tǒng)虛擬化架構主要變化體現(xiàn)在,網絡、存儲系統(tǒng)結構由軟硬件一體變?yōu)檐浻布蛛x,由于網絡和存儲方式的調整,在帶來諸多便利的同時也出現(xiàn)了一些新的問題和挑戰(zhàn),主要是軟件定義網絡、存儲的實現(xiàn)以及各類資源在數(shù)據中心靈活調度的實現(xiàn)方式。
隨著數(shù)據中心流量的急劇增長,傳統(tǒng)數(shù)據中心網絡靈活性差、運行效率低、鏈路利用率低、負載均衡困難、易擁塞等問題愈發(fā)明顯,SDN 技術的出現(xiàn)為數(shù)據中心解決網絡當前所面臨的問題提供了一個有效解決方案?;ヂ?lián)網在最初設計時,為了提升整個網絡的健壯性,避免因單點故障導致整個網絡大面積癱瘓,采用了去中心化、分布式控制的設計理念,網絡設備的控制功能和轉發(fā)功能是緊密耦合的,控制和轉發(fā)通過同一個網絡設備實現(xiàn),這種實現(xiàn)方式大幅提升了網絡整體的可靠性,單臺或局部設備停止工作不會對整個網絡的運行造成嚴重影響。高校為了面向校內用戶提供私有云計算服務,需要更為靈活、高效的網絡支撐,數(shù)據中心對其內部的網絡體系提出了新要求[4]。為解決這一系列問題,Mckeown教授于2009 年提出了軟件定義網絡的概念,計劃通過分離轉發(fā)和控制層來改善網絡僵化的問題[5]。軟件定義網絡可以有效解決傳統(tǒng)網絡過于依賴設備供應廠商所造成的管理成本高、維護工作量大、擴展升級困難等問題,有效滿足了智慧校園對數(shù)據中心資源快速調度的需求。
軟件定義網絡目前受到廣泛認可的是ONF 提出的SDN 模型,數(shù)據中心內部網絡被分成轉發(fā)、控制和應用三個層級,該模型將控制功能從所有交換機中獨立出來,交換機只負責轉發(fā),原來交換機的控制功能移交給控制層的控制器,通過控制器對整個網絡進行集中管理,控制功能的獨立與集中是實現(xiàn)軟件定義網絡的關鍵環(huán)節(jié)。分層的架構使網絡具有更為靈活和細粒度的控制能力,數(shù)據中心能夠實時優(yōu)化、控制整個網絡的流量,SDN 網絡結構見圖1。SDN 控制器集中對物理交換機、虛擬交換機進行管理,在軟件定義網絡中交換機僅具備轉發(fā)功能,而原來交換機負責的轉發(fā)規(guī)則交由控制器進行管理,控制能力的移交實現(xiàn)了控制功能與轉發(fā)功能的分離。轉發(fā)層中的設備是網絡數(shù)據傳輸?shù)妮d體,它根據控制層給其下達的指令進行網絡數(shù)據包的轉發(fā),執(zhí)行網絡數(shù)據包轉發(fā)的載體可以是物理交換機,也可以虛擬交換機軟件。在軟件定義網絡的數(shù)據中心環(huán)境下,數(shù)據中心需要的僅僅是高性能網絡交換設備,甚至是純二層無路由功能的交換機就可以滿足需要,很大程度上降低了網絡的復雜度和對網絡設備功能的要求。應用層負責對網絡數(shù)據進行分析和處理,指導底層設備控制流量轉發(fā),從而實現(xiàn)路由、網關等各類網絡基礎功能。根據數(shù)據中心服務管理需要,可以開發(fā)流量控制、網絡服務質量保障、組播、網絡接入控制、網絡安全策略等應用。通過軟件對網絡進行調度可以更好地開展數(shù)據可視化、網絡運行狀態(tài)分析等工作,為數(shù)據中心網絡優(yōu)化和管理水平提升提供有效的途徑。
SDN 網絡可編程、動態(tài)擴展的特點,對數(shù)據中心服務器、存儲的建設與管理方式產生了深遠影響。SDN 控制和轉發(fā)相互分離以后,承載控制功能的控制器成為了整個網絡的核心,控制器放置位置的不同明顯會影響到整個網絡的性能,這不僅是SDN 應用到數(shù)據中心時需要面臨的首要問題,還是一個軟件定義網絡自身面臨的關鍵性的問題,SDN 網絡仍然處于發(fā)展期,部分技術細節(jié)還不夠成熟,在實施過程中應根據應用環(huán)境來進行選擇。
圖1 SDN 網絡結構圖
多數(shù)高校以前端服務器加后端集中共享存儲的模式,對數(shù)據中心服務器進行了虛擬化,隨著虛擬機數(shù)量的增加,普遍存在服務器計算、內存資源還有富余的情況,使存儲系統(tǒng)的性能、空間首先達到瓶頸,導致虛擬機的運行受到影響,其實,存儲的采購、實施以及后續(xù)的管理都比較復雜。近幾年,軟件定義存儲開始從概念走向實質,軟件定義存儲的目標是將存儲應用程序與物理的數(shù)據存儲基礎設施分離,實現(xiàn)存儲資源的靈活分配,軟件定義存儲允許用戶自主創(chuàng)建數(shù)據中心存儲系統(tǒng),用戶可自由選擇硬件供應商,并通過軟件自主創(chuàng)建解決方案。傳統(tǒng)存儲以硬件為核心,軟件定義存儲以工作負載為核心,軟件定義存儲改變了存儲資源的提供方式,容量可以根據用戶對性能、空間以及可靠性的要求按需提供。軟件定義存儲實現(xiàn)了軟件與硬件的隔離以及異構平臺的有效共享,與傳統(tǒng)的存儲虛擬化有本質區(qū)別,它既支持通用硬件,也支持專用硬件的特殊功用,適用于幾乎所有橫向擴展的存儲[6]。通過對異構存儲資源的統(tǒng)一資源池化管理,支持存儲和數(shù)據服務的按需線性分批建設,管理員設置存儲和數(shù)據服務的管理策略,通過豐富的自助服務接口向虛擬機提供資源,從而實現(xiàn)了存儲和數(shù)據服務的解聚。
超融合架構的出現(xiàn),為數(shù)據中心及存儲系統(tǒng)全面虛擬化提供了理想的技術解決方案。超融合架構目前有兩種解決方案:第一種是使用軟、硬件一體的超融合設備,就是在單個機箱內提供完整的虛擬機平臺解決方案,實質就是一個部署了多個虛擬管理程序的商用X86 服務器,并利用相關軟件將本地存儲匯聚到一個大的共享池里,供虛擬機使用;第二種方案就是通過純軟件的方式實現(xiàn),軟件定義存儲可以更好地實現(xiàn)整個數(shù)據中心資源的自動化。數(shù)據中心僅僅實現(xiàn)存儲虛擬化,存儲很難與服務器、網絡以及數(shù)據中心其他資源協(xié)同工作,只有實現(xiàn)數(shù)據中心整體虛擬化,才可能實現(xiàn)數(shù)據中心計算、網絡、存儲和安全資源的協(xié)同工作。通過超融合架構建設的分布式存儲系統(tǒng),可以使虛擬機快捷地從一臺服務器在線遷移到平臺內的任一臺服務器,這能有效提升數(shù)據中心的容災能力。超融合架構下軟件定義存儲的結構如圖2 所示。
圖2 軟件定義存儲結構示意圖
為了實現(xiàn)數(shù)據中心的管理和優(yōu)化,需要不斷對軟件定義的數(shù)據中心進行資源分配、資源優(yōu)化、設備更新和負載均衡等操作,這需要虛擬機從工作服務器遷移到目的服務器。實時虛擬機遷移有利于實現(xiàn)網絡優(yōu)化和管理目標,為了保證業(yè)務的連續(xù)性需要在遷移過程中不中斷正在運行的服務,通過虛擬機實時遷移技術,可以在虛擬數(shù)據中心實現(xiàn)這些目標,但是虛擬機遷移仍然可能對網絡或服務性能產生影響。主要原因是在執(zhí)行虛擬機遷移操作時,工作主機和目的主機上需要消耗大量的計算資源,這肯定會對其他共享這臺物理機的虛擬機性能產生影響。多臺虛擬機共享一臺物理主機時,每臺虛擬機都沒有獨立的計算資源,虛擬機管理平臺無法保證每臺虛擬機有效的性能獨立。當進行大規(guī)模的虛擬機遷移時,遷移過程可能會使用承載了關鍵服務的鏈路來傳輸遷移數(shù)據,從而導致網絡擁堵、延遲甚至數(shù)據包丟失??傔w移時間和停機時間是評估實時虛擬機遷移性能的兩個重要指標,遷移持續(xù)時間過長可能會影響數(shù)據中心為用戶分配新的虛擬機,或者導致延遲資源分配。在遷移過程,虛擬機也會經歷不可忽略的停機時間。為了有效地進行虛擬機遷移,減少總遷移時間,提升服務性能,可以通過基于分組的啟發(fā)式算法(grouping-based heuristic algorithm,GBHA)進行遷移,算法通過計算每個分組的虛擬機對其他虛擬機遷移時間的累積影響,通過數(shù)據中心軟件管理平臺及時優(yōu)化調整分配有限的計算、網絡帶寬等資源,找到最優(yōu)的遷移方案,從而在滿足依賴關系和性能要求的前提下,解決大規(guī)模遷移觸發(fā)時的遷移規(guī)劃問題,減少虛擬機的總遷移時間。
服務器虛擬化是SDC 的核心技術之一,目前多數(shù)高校已完成了服務器的虛擬化工作,有效提升了服務器的使用率,服務器的管理更為高效,運行質量也得到了一定提升。服務器虛擬化后,通過虛擬化管理平臺軟件可以對計算機資源進行高效調度管理,實現(xiàn)了通過軟件對計算機資源的管理,是軟件定義數(shù)據中心中最早開展也是最為成熟的一個環(huán)節(jié)。
軟件管理平臺是整個軟件定義數(shù)據中心的調度中心,負責將計算、存儲、網絡、安全等資源根據軟件設置的策略進行自動化調度與統(tǒng)一管理、編排和監(jiān)控,同時根據用戶需求形成不同層次的服務以及資源量化統(tǒng)計能力。數(shù)據中心軟件管理平臺主要包括資源管理、服務管理和運維管理三個主要功能模塊。目前VMware、Amazon 和Microsoft 等公司已經開始提供比較成熟的虛擬化數(shù)據中心管理平臺,另外OpenStack 等開源軟件也得到了較為廣泛的應用,開源的SDDC 管理平臺軟件具有較好的開放性和兼容性,但后期維護升級服務的可持續(xù)性存在一定的風險,管理平臺是數(shù)據中心的核心,其穩(wěn)定性決定了數(shù)據中心整體運行情況,建議優(yōu)先考慮商業(yè)化的成熟方案。
軟件定義數(shù)據中心實現(xiàn)了對資源的動態(tài)調配,有效提升了資源利用率,通過軟件集中管理使運維難度和管理成本進一步降低。相較傳統(tǒng)虛擬化數(shù)據中心,軟件定義數(shù)據中心在靈活性、安全性、穩(wěn)定性和整體效能方面都有明顯的提升空間。
軟件定義數(shù)據中心實現(xiàn)了計算、存儲和網絡資源的池化,可以根據業(yè)務類型,將數(shù)據中心劃分為多個VDC(Virtual Data Center,虛擬數(shù)據中心),對不同業(yè)務網絡進行有效隔離,由軟件定義數(shù)據中心管理系統(tǒng)直接配置底層的硬件設備實現(xiàn),以提供不同業(yè)務之間的完全隔離,相較于傳統(tǒng)網絡操作更為簡便,實現(xiàn)更為快速,數(shù)據中心靈活性得到大幅提升,VDC 數(shù)據中心結構如圖3 所示。在軟件定義數(shù)據中心環(huán)境下,計算、存儲、網絡資源全部實現(xiàn)了虛擬化,形成了資源池,資源的分配、回收、優(yōu)化更為靈活。同時SDDC 為大規(guī)模的網絡自動化帶來了新的機遇,數(shù)據中心整體虛擬化后,通過硬件與軟件的解耦,高??梢杂行岣邩I(yè)務的敏捷性,業(yè)務部署更加快速,管理、維護更為靈活方便,用戶體驗更好。
圖3 VDC 數(shù)據中心結構示意圖
在沒有實現(xiàn)整體虛擬化時,如果數(shù)據中心內部一個業(yè)務系統(tǒng)被黑客攻破,數(shù)據中心所有業(yè)務都會暴露在被攻破的系統(tǒng)中,因為傳統(tǒng)的安全產品部署在數(shù)據中心的出口,數(shù)據中心內部各業(yè)務系統(tǒng)之間很難實現(xiàn)完全隔離。常見的做法是讓所有網絡流量必須從數(shù)據中心流出到安全設備,經過安全設備檢測后再回到數(shù)據中心,不論流量的交互方是否在同一臺物理主機內,這導致數(shù)據網絡路由并不是最優(yōu)路徑,在降低效率的同時消耗了大量數(shù)據中心資源。實現(xiàn)數(shù)據中心整體虛擬化后,通過數(shù)據中心軟件管理平臺,可以對各業(yè)務系統(tǒng)的網絡實施更精細化的控制,實現(xiàn)數(shù)據中心內部所有虛擬機的隔離,虛擬機之間必須經過數(shù)據中心管理平臺允許,才可以交互數(shù)據,從而進一步提升了數(shù)據中心內部的網絡安全性。另外通過VDC 技術將數(shù)據中心按業(yè)務類別和安全等級可以劃分為幾個虛擬的數(shù)據中心,實現(xiàn)數(shù)據在多個層面的完全隔離,大幅提升了數(shù)據的安全性。
隨著智慧校園的建設,數(shù)據中心規(guī)模不斷增大,學校對業(yè)務的可靠性提出了更高的要求。為了提高數(shù)據中心運行的可靠性,除了提升系統(tǒng)本身的健壯性外,當前主流做法是通過負載均衡的方式實現(xiàn)業(yè)務系統(tǒng)雙活部署。傳統(tǒng)網絡的分布式架構使得負載均衡技術難以滿足低成本、高靈活性、自適應調整的要求,SDN 數(shù)據中心可以根據路徑當前負載狀況和鏈路負載波動為路徑設置一個權重,并以此作為路徑選擇依據,針對需要調度的網絡流量,設置流量閾值,從而保證了高效的網絡流量調度[7]。在軟件定義數(shù)據中心中,所有流量通過集中的控制器進行調度,因此可以更為方便、快捷地掌握服務和網絡整體運行狀態(tài),從而可以根據各鏈路及服務的負載和運行情況引導網絡數(shù)據包的轉發(fā),集中的控制器通過算法就能完成傳統(tǒng)負載均衡設備的所有功能,有效提升了數(shù)據中心整體運行質量和可靠性。通過對容易引起網絡擁塞的高并發(fā)負載進行調度,將高負載應用、鏈路的數(shù)據轉移到低負載設備,以降低最大負載,并使整個數(shù)據中心的負載更加均衡。
軟件定義數(shù)據中心能夠縮短服務部署的時間,應用程序的部署不再需要幾個星期,僅需幾分鐘,服務及其配套的網絡資源、存儲資源和安全政策都可以部署到位。通過API 驅動的虛擬化可實現(xiàn)數(shù)據中心環(huán)境完全自動化,軟件定義數(shù)據中心能夠提供更為全面的應用環(huán)境。和數(shù)據中心管理人員現(xiàn)在配置虛擬機一樣,在軟件定義數(shù)據中心中,計算、網絡、存儲和安全都可以在集中的軟件管理平臺上通過軟件設置來實現(xiàn),因此,數(shù)據中心管理中員不僅可以進行自助快速配置,還能獲取數(shù)據中心必需的業(yè)務連續(xù)性、實施效率和控制能力。
通過軟件定義數(shù)據中心架構對傳統(tǒng)虛擬化數(shù)據中心進行改造后,數(shù)據中心在服務器利用率、交換機利用率、能耗、穩(wěn)定性、安全性、存儲利用率、可用性和可擴展性等方面都得到了明顯的提升,優(yōu)化前后的對比情況見圖4。
圖4 軟件定義數(shù)據中心與傳統(tǒng)架構對比圖
本文在數(shù)據中心整體虛擬化的基礎上實現(xiàn)了軟件定義數(shù)據中心,很好地支持了基礎設施云中的計算、存儲、網絡、安全資源的池化和彈性調度。從技術角度來說,軟件定義數(shù)據中心的本質是通過軟件定義計算、存儲、網絡和安全資源,并以API 接口的方式對外提供服務。同服務器虛擬化一樣,軟件定義網絡、軟件定義存儲以及軟件定義的其他IT 資源,整合形成了軟件定義數(shù)據中心,對高校整體IT 基礎設施帶來明顯變化,并進而對構建在其基礎上的應用、數(shù)據和服務產生了深遠影響。因此需要高校從整體架構層面做好規(guī)劃和設計,確保軟件定義數(shù)據中心實施的有序、高效。