云的互操作性:問題與最佳實踐
當(dāng)越來越多的應(yīng)用找到了入云之路時,和應(yīng)用相伴隨的數(shù)據(jù)的移動以及其他問題也隨之而來。
隨著云計算從虛無縹緲的概念逐漸落地成為現(xiàn)實,有一個問題變得越來越清晰,那就是用戶不希望被單一的云提供商鎖定。他們希望能夠在云間自由移動——***能在公有云和私有云之間來回遷移。用戶的希望顯然是:隨著他們計算需求的增長或收縮,他們可以自由地切換云提供商,并在他們的業(yè)務(wù)需求發(fā)生變化時,也能夠?qū)⑺麄兊膽?yīng)用和工作負(fù)載來回的遷移。
但是在這一點上,用戶和云提供商的立場是完全不同的,而真正的云的互操作性沒有一段時間恐怕也不會出現(xiàn)。有關(guān)云計算的標(biāo)準(zhǔn)尚在形成之中,還需要幾年時間方能完成。Gartner的一位副總裁Joe Skorupa認(rèn)為,即便一項開放的云計算標(biāo)準(zhǔn)獲得通過,每家云提供商也仍然會繼續(xù)實施他們自己的專利擴(kuò)展功能,以便在競爭中獲得差異化優(yōu)勢。Skorupa指出,廠商不希望云成為普通的商品,因為那樣的話,最終的結(jié)果又將是一場價格戰(zhàn)。
美國達(dá)索系統(tǒng)公司CIOJim Chilton認(rèn)為,企業(yè)的各類遺留應(yīng)用并不總能在虛擬化環(huán)境中順暢運行,這也給應(yīng)用的遷移帶來了更多的復(fù)雜性。
咨詢公司HyperStratus是虛擬化和云計算領(lǐng)域的專業(yè)咨詢公司,其CEO Bernard Golden認(rèn)為,要想讓整個行業(yè)達(dá)成共識,用某種標(biāo)準(zhǔn)格式讓應(yīng)用可以“神奇地”在不同的云間遷移,那是不太可能的。在他看來,之所以不太可能,部分原因是“在這一領(lǐng)域中有太多的創(chuàng)新正在不斷發(fā)生。”
當(dāng)然,標(biāo)準(zhǔn)的缺乏并不會阻止用戶向云遷移,但有可能會讓這一進(jìn)程放緩。美洲航空系統(tǒng)的CIOJim Chilton認(rèn)為,他們的企業(yè)戰(zhàn)略已經(jīng)證明,將企業(yè)的內(nèi)部應(yīng)用向公有云進(jìn)行遷移是有可能的。該公司主要開發(fā)CAD和其他軟件產(chǎn)品。他建立了兩個概念驗證方案,一個用于災(zāi)難備份,另一個用于技術(shù)支持,并出于安全和易用的考慮而選擇了CloudSwitch公司來做應(yīng)用遷移。初期的試驗很成功,整個遷移過程是由其內(nèi)部IT團(tuán)隊與CloudSwitch共同來管理的。
Chilton說,整個遷移過程所花費的時間比預(yù)計的稍長了一些,這主要是因為在將一些實際的應(yīng)用遷移到亞馬遜EC2云中之前,需要將這些應(yīng)用轉(zhuǎn)換成虛擬化的版本,才能夠順利遷移。奇爾頓說,“要將一個應(yīng)用順利遷移到目標(biāo)云中,必須確保該應(yīng)用是成熟的應(yīng)用。因為很多遺留應(yīng)用從未考慮過要做云遷移,所以在將其虛擬化時需要費一番功夫。”大多數(shù)業(yè)內(nèi)專家都同意說,虛擬化是將應(yīng)用遷移到云的***步。
Chilton的經(jīng)驗是:遺留應(yīng)用在虛擬化之后并不總能夠順暢運行,或者說會表現(xiàn)出前后不一致的地方。他的做法就是選擇那些不是企業(yè)日常運行關(guān)鍵任務(wù)的應(yīng)用進(jìn)行遷移,這樣也比較容易獲得企業(yè)的支持。
定義云的互操作性
和“云計算”這個詞一樣,互操作性對于不同的人來說也有著不同的意義。一些人可能會理解成把應(yīng)用從一個環(huán)境遷移到另一個環(huán)境的一致性能力——比如把應(yīng)用從Savvis遷移到亞馬遜,互操作就是要讓應(yīng)用在兩個不同環(huán)境中精確的一致。另一些人則可能理解成應(yīng)用在不同的云中運行,應(yīng)該能夠彼此共享信息,這就意味著需要一些通用的接口集。
而對其他人來說,比如對思科的市場戰(zhàn)略師James Urquhart來說,云的互操作性就是用戶可以跨不同的云計算提供商和不同的云平臺使用同樣的管理工具、服務(wù)器鏡像和其他軟件的能力。
這一問題的實質(zhì)在于,每家廠商的云環(huán)境都支持一個或多個操作系統(tǒng)和數(shù)據(jù)庫。每個云環(huán)境都包含有多種hypervisor、流程、安全、存儲模式、聯(lián)網(wǎng)模式、云API、許可證模式及其他。很少會出現(xiàn)兩家廠商以完全相同的方式,完全相同的遷移策略來實施其云服務(wù)的情況。
沙丘集團(tuán)的云計算咨詢專家Kamesh Pemmaraju說,和傳統(tǒng)的軟件和硬件環(huán)境一樣,云的互操作性會首先出現(xiàn)在堆棧的較底層。在基礎(chǔ)設(shè)施層有OVF(開放虛擬化格式),當(dāng)然還有針對XML、HTML和其他協(xié)議的標(biāo)準(zhǔn)。
但是在堆棧中越往上走,廠商的鎖定程度就會越來越強(qiáng)。
在平臺這一層,廠商的鎖定是***的,Pemmaraju說。“我們現(xiàn)在到處都可以看到一些不同廠商的垂直PaaS堆棧,每個堆棧彼此之間都是不兼容的。”
假如你只把某個應(yīng)用的某些部分遷移到目標(biāo)云中,那么當(dāng)這些部分需要交換數(shù)據(jù)或者調(diào)用API時,它們還不得不“返回”原來的云。于是有關(guān)安全、性能和延時的問題就都會出現(xiàn)。假如你要把某個應(yīng)用整體遷移——將數(shù)據(jù)庫、中間件、用戶界面等等全帶上——那就不必?fù)?dān)憂這些問題了。
操作系統(tǒng)版本和hypervisor版本的不匹配也會造成一些不易解決的沖突。云提供商在定義服務(wù)器和存儲之間的關(guān)系時,會施加一些在源應(yīng)用中并不存在的限制。源應(yīng)用可以會使用一些存儲技術(shù)來實現(xiàn)某些性能目標(biāo)——結(jié)果在目標(biāo)云中,這些存儲技術(shù)卻因為定義上的限制而無法使用。
幾乎每個云都有著***的基礎(chǔ)架構(gòu),可在服務(wù)器與應(yīng)用之間、服務(wù)器與存儲之間提供網(wǎng)絡(luò)服務(wù)。每朵云都可能在網(wǎng)絡(luò)尋址、目錄服務(wù)、防火墻、路由器、交換機(jī)、身份認(rèn)證服務(wù)、命名服務(wù)和其他資源上有所差異。目標(biāo)云提供商的網(wǎng)絡(luò)架構(gòu)肯定會與源頭云的網(wǎng)絡(luò)架構(gòu)不同。之所以會如此的一個原因是他們希望支持多租戶環(huán)境。
云提供商還會做出他們自己關(guān)于安全策略的選擇:誰可以訪問什么資源,軟件升級的規(guī)則,使用數(shù)據(jù)和磁盤的政策等等。在云安全方面,應(yīng)用的使用者和所有者通常都沒有多少可選擇余地。有些應(yīng)用需要在特定的安全域中運行,但是云提供商卻有可能不支持這類安全域,或者說他們所做的改變可能會破壞該應(yīng)用所需的安全環(huán)境。
在源頭云中的一些熟知的管理工具在目標(biāo)云中通常無法使用,或者只能在某種限定條件下使用。驅(qū)動程序、工具、操作系統(tǒng)配置或者操作系統(tǒng)版本在兩種云環(huán)境下也都可能發(fā)揮不同的作用。在源頭云中所使用的軟件升級工具必須進(jìn)行改寫以適用于目標(biāo)云。密鑰管理必須成為連接源頭云和目標(biāo)云橋梁的組成部分,在目標(biāo)云中對密鑰的管理必須十分謹(jǐn)慎小心。
Gartner的Skorupa解釋道,即便云的互操作性問題隨著時間的進(jìn)展而得到了解決,在各種云之間遷移大型的數(shù)據(jù)集合仍然會出現(xiàn)問題,這是因為延遲的問題依然存在,遷移數(shù)據(jù)依然需要時間。因此當(dāng)你想要遷移一個應(yīng)用時,你還通常還不得不把與之相伴隨的存儲也進(jìn)行遷移。
Xsigo公司的I/O Director正在努力使數(shù)據(jù)和應(yīng)用在單一云中的不同主機(jī)之間的遷移變得更為便利,但是該公司似乎還沒有推出能夠解決跨云遷移應(yīng)用相關(guān)存儲的類似產(chǎn)品。
IT研究公司Ideas國際的分析師Tony Iams稱,很多人都在考察數(shù)據(jù)在云之間的往復(fù)傳送成本,但結(jié)果讓他們很沮喪。
在云間遷移一個應(yīng)用,意味著首先要將其從原來的生態(tài)系統(tǒng)中剝離。你必須搞清楚這么做是否合適。很有可能你還需要根據(jù)目標(biāo)云所提供的組件/部件重新設(shè)計該應(yīng)用。那么,為了讓這個應(yīng)用在目標(biāo)云中也能夠像其原來的形式那樣運行良好,你是否愿意對其重新改寫呢?
重新改寫就意味著原來所使用的一些服務(wù)可能不能再使用了,或者說源應(yīng)用不能再用了。源頭云和目標(biāo)云之間的這些差異還有可能觸發(fā)一系列的集成問題。
即將出現(xiàn)的云標(biāo)準(zhǔn)
要解決如此之多的問題,需要云標(biāo)準(zhǔn),這正像聯(lián)網(wǎng)需要TCP/IP標(biāo)準(zhǔn)一樣。也有人認(rèn)為,這種云標(biāo)準(zhǔn)可能更像API,可以對接所有的云產(chǎn)品和云服務(wù),從而促進(jìn)透明的互操作性。但是Forrester分析師James Staten卻認(rèn)為,未來采用通用云API的可能性不大。在他看來,推動標(biāo)準(zhǔn)化的進(jìn)程不能太超前于市場本身。“如今并沒有令人信服的理由去要求大家遵守什么標(biāo)準(zhǔn),已經(jīng)建立了云計算環(huán)境的企業(yè)也還不多。”
盡管如此,推動標(biāo)準(zhǔn)化的進(jìn)程仍在進(jìn)行中。存儲網(wǎng)絡(luò)行業(yè)協(xié)會(SNIA)已經(jīng)完成了一項標(biāo)準(zhǔn),旨在使企業(yè)在云間遷移數(shù)據(jù)的工作可以變得更為簡單。SNIA預(yù)計該標(biāo)準(zhǔn)的實施將會在今年下半年啟動。
一些云廠商也在極力想讓自己的API成為一種開放標(biāo)準(zhǔn)。VMware已經(jīng)把它的vCloud API提交給了分布式管理工作組(DMTF)作為一種開放標(biāo)準(zhǔn)提案;紅帽也將它的Deltacloud平臺提交給了DMTF。VMware的vCloud已經(jīng)用在了基于VMware的各種私有云和vCloud Express公有云中,可為其客戶提供某種成都的云的互操作性,但客戶所付出的代價就是基本上被VMware一家鎖定。
到目前為止,唯一可算得上是云標(biāo)準(zhǔn)的就是OVF(開放虛擬化格式)了。不過它也僅涉及虛擬機(jī)的打包,只是為了虛擬機(jī)遷移的便利而設(shè)計的。
由于各種云平臺間的互操作性標(biāo)準(zhǔn)還沒有到位,那么潛在的云采納者該如何做呢?對于新進(jìn)者來說,完全不必等待互操作性標(biāo)準(zhǔn)出臺之后再去實施云計算,因為那樣的話,有可能會錯過云計算所帶來的諸多好處。在一個產(chǎn)生著巨大變革的環(huán)境下,潛在的收益也是非常巨大的,所以***的決策就是去研究它,并作出選擇。
咨詢師們普遍認(rèn)為,***的辦法是圍繞靈活的應(yīng)用架構(gòu)來制定遷移戰(zhàn)略,這樣就不至于被任何一種具體的產(chǎn)品鎖定,但是為了實現(xiàn)這一點,企業(yè)必須遵循以下兩個步驟:
確保應(yīng)用及其支持組件不必依賴操作系統(tǒng)和基礎(chǔ)設(shè)施。換句話說,就是要使用成熟的第四代編程語言,如Cognos、Focus、Clipper等來編寫應(yīng)用,并使用諸如Java等解釋系統(tǒng)來改善應(yīng)用的可移植性。
尋找可在任意環(huán)境中支持你的應(yīng)用的管理平臺。如果你必須要將應(yīng)用進(jìn)行遷移,那么有了這樣的平臺,你就可以繼續(xù)使用成熟的管理框架對其進(jìn)行管理,而你的IT團(tuán)隊對于這樣的管理框架是很熟悉的。
有些用戶表示,他們將會使用一種選擇云技術(shù)和云廠商的***戰(zhàn)略。也就是說,他們計劃采用混合與匹配同類***云廠商的辦法,以確保他們能夠獲得市場上所出現(xiàn)的所有的創(chuàng)新方案。不過混合與匹配的方法雖然能夠很好地適用于企業(yè)套裝軟件,但當(dāng)其應(yīng)用于云計算時卻有可能帶來巨大的集成方面的挑戰(zhàn)和其他問題。
首先,要管理這樣一種部署戰(zhàn)略需要支付高昂的運營成本。其次,有可能不得不停用大量的管理工具,為每一組管理工具分配一個運營團(tuán)隊,并且需要管理多份管理合同。在標(biāo)準(zhǔn)尚未到位的情況下,這種所謂***方法所導(dǎo)致的管理費用會高得離譜。
混合云的問題
很多企業(yè)都在計劃采用公有云和私有云的混合模式。這些企業(yè)尤其需要能夠?qū)?yīng)用和數(shù)據(jù)在云間進(jìn)行無縫遷移。而且這種遷移還不能只是單向度的、一次性的。
新近出現(xiàn)的關(guān)于混合云的通常定義是,至少由一個私有云和一個公有云構(gòu)成。私有云可以是企業(yè)內(nèi)的私有云,或者托管在外部數(shù)據(jù)中心的虛擬私有云。最簡單的混合云就是由單一的私有云和單一的公有云構(gòu)成的。不過從理論上說,混合云也可以由多個私有云/公有云構(gòu)成。
Ideas國際的Iams認(rèn)為,真正的問題就在于,如何在混合云的公/私兩端管理計算資源。為此,企業(yè)的IT團(tuán)隊必須能夠回答如下一些問題:
● 企業(yè)主要的系統(tǒng)管理解決方案是什么?
● 企業(yè)依據(jù)何種標(biāo)準(zhǔn)和策略來決定哪些應(yīng)用應(yīng)分配給公有云,哪些應(yīng)分配給私有云?
● 與安全、SLA和可用性相關(guān)聯(lián)的需求有哪些?
● 將企業(yè)應(yīng)用遷移到亞馬遜或者Rackspace的理由是什么?是因為運營成本非常低廉,所以值得遷移嗎?
● 有多少數(shù)據(jù)需要在云間遷移,其成本和風(fēng)險究竟怎樣?
沙丘集團(tuán)的Pemmaraju指出,“用戶實際想要的是一個單一窗口,無論他們是在私有云還是在多個云中工作,從云環(huán)境的管理視圖來看應(yīng)該都是一樣的。他們想要找的就是應(yīng)用在遷移到目標(biāo)云后的無縫式管理。”
可解決互操作性問題的工具
公有云提供商,如亞馬遜、Rackspace和Terremark等,都可提供構(gòu)建虛擬服務(wù)器的模板。一些第三方產(chǎn)品,如CloudSwitch和RightScale,也都能讓應(yīng)用向目標(biāo)云的遷移變得簡單。
這些工具,再加上亞馬遜新推出的亞馬遜VPC,皆承諾可以無縫集成源頭云和目標(biāo)云。其他一些類似工具還有ServiceMesh和Racemi。所有這些工具的目標(biāo)都是為了讓企業(yè)能夠在云中運行自己的應(yīng)用,而無須完全改寫應(yīng)用。
假如企業(yè)在私有云中使用的是VMware的vCloud Director,那么已經(jīng)有很多VMware的合作伙伴的產(chǎn)品都已通過了vCloud Express認(rèn)證。于是由VMware合作伙伴所托管的目標(biāo)云就能夠成為企業(yè)私有云的無縫擴(kuò)展。VMware合作伙伴和基于vCloud Director的私有云使用的是相同的管理工具集,提供同樣的虛擬化堆棧,同樣的虛擬化工具集,以及根據(jù)VMware ESX標(biāo)準(zhǔn)化了的各種技術(shù)。但是這樣一來,企業(yè)有可能被VMware鎖定。
還有其他一些解決方案也能夠部分解決云的互操作性問題,但是卻不具備CloudSwitch所提供的一些功能。此類工具包括紅帽的Deltacloud開源項目和Eucalyptus系統(tǒng)公司的Eucalyptus云。
Verizon商務(wù)的云服務(wù)執(zhí)行經(jīng)理Jeff Deacon認(rèn)為,第三方廠商計劃采用漸進(jìn)的方式來解決云的互操作性問題。“假如某個云已經(jīng)有了合適的API,那么第三方廠商就可以讓它與其他的云進(jìn)行互操作。”
Dassault的Chilton稱,強(qiáng)調(diào)云廠商之間的平臺一致性是合理的,這樣便可允許客戶依據(jù)云廠商的能力來選擇廠商。到目前為止,還沒有哪家云廠商敢于號稱自己是最安全的、最可用的或者不存在知識產(chǎn)權(quán)問題的廠商。Chilton設(shè)想,到了某個時候,多個云廠商將需要完成不同的需求,這也會促使云服務(wù)的價格下降。他現(xiàn)在的策略就是先選擇一家云廠商起步,用一個小團(tuán)隊來體驗這個云,再利用CloudSwitch的工具來獲得遷移經(jīng)驗。
Ideas國際的Iams也認(rèn)為,既然市場的力量在推動,那么云廠商就應(yīng)該尋求更多的互操作性。
云的成本
Gartner副總裁Chris Wolf指出,任何云戰(zhàn)略中***的一塊任務(wù)就是要確定應(yīng)用在數(shù)據(jù)中心內(nèi)的運行成本和它在目標(biāo)云中的運行成本的比較。有些人會想當(dāng)然地認(rèn)為公有云的價格肯定是更為低廉的。
但實際情況卻并非總是如此。Wolf說,他有不少客戶已經(jīng)完成了詳細(xì)的統(tǒng)計分析,可以證明應(yīng)用在公有云上運行的成本其實要比應(yīng)用在企業(yè)內(nèi)的運行成本高出不少。他說,“亞馬遜總是被人拿來當(dāng)做成本比較的一個基準(zhǔn),但你其實得不到亞馬遜的備份或安全成本,也得不到亞馬遜基礎(chǔ)設(shè)施頂層的那些管理服務(wù)的成本。如果真想進(jìn)行一對一的成本比較,那你就必須把你正在使用的各種服務(wù)成本都算進(jìn)去,但亞馬遜是不會給你提供這些成本的。”
Ideas國際的Iams說,“用戶必須非常關(guān)注成本問題,非常關(guān)注使用不同云廠商平臺的成本,以及這些成本與企業(yè)端基礎(chǔ)設(shè)施架構(gòu)成本的比較。用戶必須自己監(jiān)測企業(yè)內(nèi)部基礎(chǔ)設(shè)施與管理云廠商以及處理不同SLA的初始成本,看看到底能不能節(jié)約成本。”
沙丘集團(tuán)的Pemmaraju認(rèn)為,“從歷史傳統(tǒng)看,在創(chuàng)新時期很少會有標(biāo)準(zhǔn)出現(xiàn)。人人都只想爭取更大的市場份額。之后才會看到有廠商把很多東西綜合到一起,比如CLoudSwitch。會看到通用的API逐漸超越各家云廠商專利的API,然后會看到這些通用的API打造出一個標(biāo)準(zhǔn)來。但我們現(xiàn)在還什么都沒有。”他預(yù)計,云的互操作性標(biāo)準(zhǔn)的制定會在明后年的某個時候開始啟動。
Pemmaraju稱,今天之所以有大量的云廠商存在,是因為整個市場還處于早期階段,他預(yù)計還會不斷地有廠商繼續(xù)進(jìn)入這個市場。但是在未來的兩到三年內(nèi),廠商間的整合就將開始,最終只會剩下三到四家主要的廠商。到了那時候,用戶們就必須做出選擇,看看是選擇Java還是C#,是選擇Ruby還是其他堆棧了。
專家們的忠告是,鎖定一般會在平臺層發(fā)生,例如你一旦選定了Windows Azure或者VMware,那么今后你也就會被這家廠商黏住。
大企業(yè)將更多采用混合云
隨著采用混合云的大企業(yè)越來越多,推動云的互操作性的背后力量也將會越來越強(qiáng)。沙丘集團(tuán)***的一份調(diào)查顯示,云廠商們相信,今后兩到三年,云計算的普及將會加速。該調(diào)查指出,云廠商們約85%的收入目前主要來自中小企業(yè),但是在今后的兩到三年內(nèi),云廠商們預(yù)計其收入將主要來自于財富500強(qiáng)企業(yè)。
Pemmaraju認(rèn)為,在今后兩到三年內(nèi),云計算收入最重要的增長動力預(yù)計將來自私有云和混合云。公有云幾乎全部為中小企業(yè)提供服務(wù)。
中小企業(yè)主要是為了尋求SaaS應(yīng)用,大部分原因是想減少原本就規(guī)模不大的數(shù)據(jù)中心的碳足跡。由于中小企業(yè)一般都沒有大型數(shù)據(jù)中心,所以也很容易放棄自購的服務(wù)器、數(shù)據(jù)中心和內(nèi)部應(yīng)用,完全轉(zhuǎn)向公有云。當(dāng)然,美國的企業(yè)監(jiān)管制度和其他約束性法規(guī)可能會阻止中小企業(yè)全面轉(zhuǎn)向公有云。
另一方面,大企業(yè)在其現(xiàn)有的數(shù)據(jù)中心上都有巨額的投入,他們一般都不會完全放棄自己大量的服務(wù)器,而轉(zhuǎn)向公有云。Pemmaraju認(rèn)為,相反地,大企業(yè)會積極地構(gòu)建私有云。他們很可能只會在一定范圍內(nèi)使用公有云。大量的應(yīng)用還是會在私有云的數(shù)據(jù)中心內(nèi)部運行。
當(dāng)這樣的情形在大企業(yè)中變得日益普遍之后,我們就會看到對于混合云和云的互操作性的更強(qiáng)烈的需求了。