分解技術(shù)大揭秘
支持傳統(tǒng)的IT體系架構(gòu)要耗費(fèi)大量的時(shí)間,這與當(dāng)前快節(jié)奏的業(yè)務(wù)環(huán)境背道而馳。新興的各種技術(shù),例如融合與超融合基礎(chǔ)架構(gòu),公有云和私有云,以及基于Hadoop和Spark的橫向擴(kuò)展產(chǎn)品與服務(wù)正在緩解局面。但這還不夠,我們希望可以將更多時(shí)間投入到創(chuàng)新應(yīng)用的開發(fā),而非維護(hù)管理IT基礎(chǔ)架構(gòu)之上。
分解(Disaggregation),將一個(gè)聚合體分割成多個(gè)組成部分,這并不是什么破天荒的想法,但其重要性正在日益凸顯出來。在IT領(lǐng)域中,分解意味著將計(jì)算機(jī)分割成處理、內(nèi)存、I/O、存儲(chǔ)、緩存、網(wǎng)絡(luò)結(jié)構(gòu)等核心元素,從而實(shí)現(xiàn)最具成本效益的敏捷的基礎(chǔ)架構(gòu)和高效的存儲(chǔ)配置。
但為什么我們要在諸如超融合等聚合IT資源的理念盛行十年之后重提這一話題呢?原因在于單獨(dú)擴(kuò)展某單一資源通常會(huì)比將其作為一個(gè)整體進(jìn)行擴(kuò)展來得更具成本效益。
分解的理念在于用大量計(jì)算機(jī)來創(chuàng)建出獨(dú)立的資源池,然后根據(jù)需要分配適當(dāng)?shù)馁Y源組合——內(nèi)存、處理器、緩存、網(wǎng)絡(luò)架構(gòu)以及存儲(chǔ)分配——從而為各個(gè)應(yīng)用程序提供相應(yīng)服務(wù)。如果操作得當(dāng),分解基礎(chǔ)架構(gòu)可以隨時(shí)執(zhí)行,提升高達(dá)80%的資源利用率,并且讓管理成本隨著存儲(chǔ)分配的自動(dòng)化而下降。
我們用五款產(chǎn)品來詮釋分解技術(shù)是如何使用,并從中獲益的。其中三款和存儲(chǔ)相關(guān):Nutanix、Pivot3和Datrium;剩下兩款DriveScale和HP的Synergy將分解應(yīng)用于更前沿的領(lǐng)域。
超融合與分解
超融合的關(guān)鍵特點(diǎn)之一在于以計(jì)算或存儲(chǔ)規(guī)格預(yù)先定義的節(jié)點(diǎn)作為購買的最小單位,即便你只需要計(jì)算或是存儲(chǔ)。在Nutanix早期的產(chǎn)品中你別無選擇。不過現(xiàn)在Nutanix、Pivot3及其他公司可以銷售大容量存儲(chǔ)或者高性能計(jì)算的型號(hào),一定程度上減緩,但未徹底消除這個(gè)問題。
Nutanix提供一系列的產(chǎn)品型號(hào),從最低零存儲(chǔ)——完全沒有磁盤開始。此外,為了滿足一系列應(yīng)用的要求,你可以構(gòu)建具有多種節(jié)點(diǎn)的混合式集群,這亦是超融合技術(shù)的關(guān)鍵特性,可以讓你購買最適合的節(jié)點(diǎn),并在整體上統(tǒng)一管理集群。
理想狀況下,分解所指的是計(jì)算與存儲(chǔ)的徹底分離,你完全可以購買100%的計(jì)算或存儲(chǔ)空間。但是在Nutanix環(huán)境中,只有100%的計(jì)算而非存儲(chǔ)。Nutanix對(duì)側(cè)重存儲(chǔ)的應(yīng)用使用最小計(jì)算單元來滿足。雖然不算是純粹的分解,但至少在一定程度上達(dá)到了目的。
Pivot3則采用不同的方式,雖與Nutanix類似,但它有單獨(dú)的計(jì)算節(jié)點(diǎn)和具備最小計(jì)算能力的存儲(chǔ)節(jié)點(diǎn)。存儲(chǔ)節(jié)點(diǎn)可以應(yīng)用于典型的超融合環(huán)境中,其中側(cè)重于虛擬機(jī)的運(yùn)行,并假設(shè)使用虛擬化管理程序。不過亦可以脫離虛擬化管理程序使用節(jié)點(diǎn)——換而言之,其本質(zhì)上支持裸機(jī)運(yùn)行。客戶可以像從前那樣在物理基礎(chǔ)架構(gòu)上運(yùn)行尚未虛擬化的應(yīng)用程序,同時(shí)仍然通過單獨(dú)的控制臺(tái)管理超融合集群中創(chuàng)建出的存儲(chǔ)池。
Pivot 3收購了NexGen Storage,一家具備卓越服務(wù)品質(zhì)的外部磁盤陣列供應(yīng)商,從而可以將NexGen存儲(chǔ)陣列“分解”集成到超融合資源池中。Pivot 3還允許使用iSCSI存儲(chǔ)資源運(yùn)行集群的物理或虛擬應(yīng)用程序。超融合集群內(nèi)外部的所有應(yīng)用程序均可以使用NexGen基于策略的服務(wù)質(zhì)量功能。
雖然都不是純粹的分解,不過Nutanix和Pivot 3正在努力為客戶帶來價(jià)值。
分解與Datrium
Datrium僅有存儲(chǔ)產(chǎn)品,不過公司將傳統(tǒng)許多與存儲(chǔ)陣列相關(guān)聯(lián)的功能分割開來,擴(kuò)展了對(duì)分解技術(shù)概念的外延。簡而言之,Datrium在橫向擴(kuò)展的服務(wù)器架構(gòu)中實(shí)現(xiàn)快照、壓縮、重復(fù)數(shù)據(jù)刪除、復(fù)制、加密等功能,不過在存儲(chǔ)陣列中留下了部分功能,例如鏡像的非易失性RAM和簡化的雙控制器。這樣的存儲(chǔ)比JBOD更為豐富,但比傳統(tǒng)陣列更加簡單。Datrium將此稱為DVX數(shù)據(jù)節(jié)點(diǎn)。
Datrium使用軟件定義的原則在服務(wù)器中實(shí)現(xiàn)這部分功能,充分利用橫向擴(kuò)展;例如,你可以通過添加一臺(tái)服務(wù)器來提高重復(fù)數(shù)據(jù)刪除或加密性能。與此同時(shí),Datrium運(yùn)用更為智能但簡化的存儲(chǔ),其聲稱用戶可以在超融合方面得到比其他100%的軟件定義產(chǎn)品供應(yīng)商(如Hedvig和SwiftStack)更好的性能。與傳統(tǒng)的雙控制器存儲(chǔ)陣列不同,Datrium的數(shù)據(jù)節(jié)點(diǎn)不會(huì)形成任何孤島,并且相互獨(dú)立地提供橫向擴(kuò)展所需的性能和容量。服務(wù)器還可以運(yùn)行物理、虛擬和容器應(yīng)用程序。
Datrium將此稱為“開放式融合”,而非純粹的分解,我們可以再來看看該理念還有什么其它的實(shí)踐形式。
HPE Synergy分解
HPE的Synergy是業(yè)內(nèi)首款將其HPE產(chǎn)品稱為可組合的基礎(chǔ)架構(gòu)平臺(tái),這是最純粹的分解形式。從計(jì)算、存儲(chǔ)和網(wǎng)絡(luò)各個(gè)資源池開始,并根據(jù)需要在每款應(yīng)用程序的軟件控制下進(jìn)行組合。其使用單一的上層API來管控所有這三層,完成基礎(chǔ)架構(gòu)構(gòu)建、分解、管理、更新和擴(kuò)展工作,Synergy同樣適用于虛擬化、混合云和DevOps操作模型。
不同于傳統(tǒng)的超融合技術(shù),Synergy憑借其在虛擬化方面的優(yōu)勢(shì),涵蓋了各類物理和虛擬化應(yīng)用——從傳統(tǒng)類型、移動(dòng)類型到云端應(yīng)用。而超融合技術(shù)在一個(gè)橫向擴(kuò)展模型中將計(jì)算與存儲(chǔ)分配結(jié)合在一起,在大多數(shù)情況下,其只是沒能將網(wǎng)絡(luò)涵蓋在內(nèi)。而從最初的形式上看,分解則從下往上構(gòu)成了完整的基礎(chǔ)架構(gòu),包含網(wǎng)絡(luò)在內(nèi)。
Synergy由三個(gè)基本要素構(gòu)成:
池化的資源池。計(jì)算、存儲(chǔ)與網(wǎng)絡(luò)資源池根據(jù)每個(gè)應(yīng)用程序所需和特定的服務(wù)級(jí)別劃分供應(yīng)。你可以根據(jù)應(yīng)用程序的需要,將物理、虛擬和容器工作負(fù)載以及內(nèi)部的存儲(chǔ)容量,如直連的文件、對(duì)象或數(shù)據(jù)塊存儲(chǔ),進(jìn)行配置。鑒于3PAR存儲(chǔ)在HPE產(chǎn)品家族中的重要地位,其可以被配置為外部直連存儲(chǔ)、并作為資源池的組成部分。光纖可以支持多種協(xié)議,帶寬可以在不中斷的前提下擴(kuò)展、調(diào)整。從而實(shí)現(xiàn)了隨時(shí)添加計(jì)算、存儲(chǔ)和網(wǎng)絡(luò)資源,不用影響業(yè)務(wù)運(yùn)作。這些資源自動(dòng)成為資源池的一部分,提供應(yīng)用程序使用。同時(shí)擴(kuò)展并不會(huì)增加管理負(fù)擔(dān)。
智能化的軟件定義。HPE將Synergy構(gòu)建為內(nèi)置智能化軟件定義的硬件。配置、擴(kuò)展、取消等均經(jīng)由模板完成,基礎(chǔ)架構(gòu)能夠以近乎實(shí)時(shí)的速度進(jìn)行組合和重組。Synergy既是基礎(chǔ)架構(gòu),亦具有軟件功能,使得曾經(jīng)需要數(shù)小時(shí)或數(shù)日的常用功能現(xiàn)在可以在近乎即刻間發(fā)生。計(jì)算、存儲(chǔ)與網(wǎng)絡(luò)與適合的固件、BIOS、驅(qū)動(dòng)程序以及操作系統(tǒng)鏡像一同提供,無需運(yùn)營人員干預(yù)。這也是Synergy使用模板的目的,讓基礎(chǔ)架構(gòu)便于使用,不再強(qiáng)調(diào)內(nèi)部硬件或軟件的專業(yè)知識(shí)。這不僅適用于IT,同樣也適用于DevOps和測(cè)試人員。開發(fā)、測(cè)試和生產(chǎn)環(huán)境之間的差異會(huì)消失,都使用相同一致的界面。
統(tǒng)一的應(yīng)用程序接口。不同于傳統(tǒng)的基礎(chǔ)架構(gòu)中每個(gè)設(shè)備都擁有自身獨(dú)特的底層應(yīng)用程序接口,你必須以此配置設(shè)備,Synergy在計(jì)算、存儲(chǔ)與網(wǎng)絡(luò)之間使用上層的應(yīng)用程序接口。經(jīng)過融合諸多基礎(chǔ)架構(gòu)設(shè)備供應(yīng)商(Dell EMC、IBM與Cisco、NetApp與Cisco等)的努力,簡化了計(jì)算、存儲(chǔ)和網(wǎng)絡(luò)的配置、管理。這通過掩蔽層來實(shí)現(xiàn),在此之下,各元素仍有所不同。
Synergy統(tǒng)一的應(yīng)用程序接口有兩大特征: (1) 比典型命令行界面更加高級(jí); (2) 設(shè)計(jì)目的在于跨越計(jì)算、存儲(chǔ)與網(wǎng)絡(luò)。另外其提供了單一的界面來發(fā)現(xiàn)、檢索、盤點(diǎn)、配置、交付、更新和診斷基礎(chǔ)架構(gòu)。而且還是將Synergy整合到其它管理平臺(tái)(包括Microsoft System Center、Red Hat和VMware vCenter),以及其它DevOps平臺(tái)(如Chef、Docker、OpenStack、Puppet和Python)的單一化工具。
HPE Synergy產(chǎn)品
HPE Synergy的第一代模型是10U機(jī)架高度的12000 Frame。你可以在一個(gè)閉環(huán)內(nèi)配置多個(gè)Frame,并用單個(gè)控制臺(tái)同時(shí)管理上多個(gè)閉環(huán)。Frame中有五個(gè)重要元素——協(xié)同器、鏡像流化器、協(xié)同存儲(chǔ)、協(xié)同計(jì)算以及協(xié)同光纖模塊——從而創(chuàng)建出一個(gè)完全分解的平臺(tái)。
協(xié)同器。協(xié)同器負(fù)責(zé)發(fā)現(xiàn)、檢索、盤點(diǎn)、配置、交付、更新和診斷基礎(chǔ)架構(gòu)中的計(jì)算、存儲(chǔ)與網(wǎng)絡(luò)資源。其是一臺(tái)基于HPE OneView和統(tǒng)一應(yīng)用程序接口的物理設(shè)備。協(xié)同器使用IT或業(yè)務(wù)用戶開發(fā)出的服務(wù)器配置文件模板、能夠跨計(jì)算資源自動(dòng)化配置、更新和回收計(jì)算資源的過程??梢酝ㄟ^單個(gè)模板創(chuàng)建出許多計(jì)算模板配置文件。
鏡像流化器。這是一款嵌入在Frame內(nèi)的物理設(shè)備,鏡像流化器內(nèi)為各類應(yīng)用程序儲(chǔ)存了可啟動(dòng)的寶貴鏡像,可以在幾分鐘內(nèi)加載到計(jì)算模塊上。這可以取代傳統(tǒng)在物理設(shè)備上構(gòu)建服務(wù)器、安裝操作系統(tǒng)、虛擬化管理程序、I/O驅(qū)動(dòng)器應(yīng)用程序堆棧等操作,將原本需要數(shù)小時(shí)乃至數(shù)日,易出故障的流程轉(zhuǎn)變?yōu)橥耆詣?dòng)化、不會(huì)出錯(cuò)的過程,并且只需數(shù)分鐘的時(shí)間。
協(xié)同存儲(chǔ)、計(jì)算與網(wǎng)絡(luò)。這些單獨(dú)的模塊讓存儲(chǔ)、計(jì)算與網(wǎng)絡(luò)和系統(tǒng)內(nèi)其它各個(gè)元素緊密集成。你只需要在這些資源不足時(shí)加以補(bǔ)充。所有三種元素從體系架構(gòu)上都是橫向擴(kuò)展的,你可以構(gòu)建以此逐一構(gòu)建、管理起規(guī)模龐大的基礎(chǔ)架構(gòu)。即便是網(wǎng)絡(luò),在過去最為靜態(tài)的元素,在今天也是可編程的,能夠通過代碼完成交付或撤回。
DriveScale的分解方式
DriveScale已經(jīng)將計(jì)算與存儲(chǔ)分解應(yīng)用于下一代服務(wù)大數(shù)據(jù)分析的應(yīng)用程序,例如Cassandra、Hadoop、Kafka、MongoDB和Spark。這些應(yīng)用偏好橫向擴(kuò)展架構(gòu),通常由通用型服務(wù)器和小型節(jié)點(diǎn)構(gòu)建而成,包含計(jì)算與直連式內(nèi)置存儲(chǔ)。這些節(jié)點(diǎn)數(shù)以百計(jì),從而才能解決大數(shù)據(jù)的相關(guān)問題,每個(gè)節(jié)點(diǎn)都使用節(jié)點(diǎn)本地的相關(guān)數(shù)據(jù)來處理部分難題,然后整合結(jié)果,得出答案。通過將數(shù)據(jù)保存在本地,使其最貼近計(jì)算資源,使得延遲和流量變得最小。
這種方式在過去五年中已經(jīng)掌控了整個(gè)大數(shù)據(jù)世界。但是伴隨著集群的日益膨脹,有時(shí)甚至出現(xiàn)成千上萬個(gè)節(jié)點(diǎn),問題隨之出現(xiàn),例如欠缺靈活性、繁瑣而昂貴的升級(jí)費(fèi)用,以及應(yīng)用程序孤島的問題。應(yīng)用孤島產(chǎn)生的原因在于,對(duì)每一項(xiàng)應(yīng)用程序,其計(jì)算與存儲(chǔ)分配的比例需要保持相同,而由于需要保持處理器溫度,機(jī)箱內(nèi)可容納的驅(qū)動(dòng)器數(shù)量是有限的。
DriveScale將計(jì)算與存儲(chǔ)分解開,從而可以在線不間斷地創(chuàng)建或變更應(yīng)用程序上計(jì)算與存儲(chǔ)的分配比例。其要求從一家或數(shù)家供應(yīng)商那里分別購買JBOD計(jì)算和存儲(chǔ)(服務(wù)器供應(yīng)商由于改善了空氣流,可以比標(biāo)準(zhǔn)的商品化服務(wù)器提供更高的計(jì)算密度)。從而讓你在不同的時(shí)間節(jié)點(diǎn)分別更新服務(wù)器或存儲(chǔ)——通常計(jì)算會(huì)在每兩三年更新一次,而驅(qū)動(dòng)器則會(huì)維持五年的時(shí)間。由于可以使用單獨(dú)的計(jì)算和存儲(chǔ)池,你可以隨意分配不同的應(yīng)用程序資源,較以前大大提高了資源利用率。
DriveScale使用SAS轉(zhuǎn)以太網(wǎng)適配器,將磁盤驅(qū)動(dòng)器連接到標(biāo)準(zhǔn)機(jī)架內(nèi)的以太網(wǎng)交換機(jī)上,而該交換機(jī)會(huì)和集群內(nèi)所有的計(jì)算單元相連。供應(yīng)商的專利技術(shù)存在于協(xié)同軟件之中,通過編程方式交付、管理和回收資源。其圖形化界面基于RESTful API,可以向上集成客戶首選的管理工具,包含Chef、Puppet等。
值得你關(guān)注的分解技術(shù)
從字面上的解釋看,分解意味著將某些東西分割成各個(gè)組件,然后將這些組件形成資源池,可以用程序化的方式加以組合,從而將最適合的資源組合交付給應(yīng)用程序。某些存儲(chǔ)與超融合供應(yīng)商已經(jīng)應(yīng)用分解原則使其產(chǎn)品更具成本效益。不過DriveScale與HPE Synergy以最新的,不同尋常的方式來加以應(yīng)用。
HPE Synergy是最全面、應(yīng)用最廣泛的分解范例,證實(shí)了分解理念如何用于解決各種問題。HPE將協(xié)同體系架構(gòu)視為超融合技術(shù)發(fā)展的下一階段。而其他供應(yīng)商,如DriveScale,根據(jù)分解原則來解決具體的問題。
雖然公有云供應(yīng)商(例如Amazon Web Services和Google Cloud Platform)所使用的體系架構(gòu)的細(xì)節(jié)上不為人所知,但分解很有可能是其基本原則??赡苁欠纸獾脑缙陔A段,創(chuàng)建了單獨(dú)的資源池,將資源在適合的時(shí)間加以正確的組合,然后將其提供給應(yīng)用程序。這無疑是正確的做法,所以說,現(xiàn)在是時(shí)候?qū)?ldquo;分解”添加到我們的日常的詞匯表中去了。