當(dāng)應(yīng)用程序的可移植性問題出現(xiàn)時(shí),企業(yè)和云計(jì)算供應(yīng)商的利益就會(huì)發(fā)生沖突。企業(yè)組織想要在企業(yè)內(nèi)部IT,私有云和平臺(tái)即服務(wù)(PaaS)和軟件即服務(wù)(SaaS)的公共云的前提下無(wú)縫地運(yùn)行他們的應(yīng)用程序??梢浦残詰?yīng)用程序使用戶能靈活地做到這一點(diǎn)—并移動(dòng)到不同的供應(yīng)商—但供應(yīng)商并不急于發(fā)送業(yè)務(wù)給他們的競(jìng)爭(zhēng)對(duì)手,位于圣安東尼奧市的Denim集團(tuán)主席Dan Cornell說。
這些實(shí)現(xiàn)應(yīng)用程序的可移植性的沖突需求和技術(shù)挑戰(zhàn),使今天的云使用情況充滿挑戰(zhàn)。
在理想的情況下,一個(gè)組織將能夠從任何設(shè)備發(fā)送并接收應(yīng)用程序和數(shù)據(jù)到任何云計(jì)算平臺(tái)。然而,時(shí)至今日,唯一可以保證的使用應(yīng)用程序運(yùn)行在兩個(gè)不同的云上——如果兩個(gè)不同的云都運(yùn)行相同的軟件,巴黎凱捷全球基礎(chǔ)設(shè)施服務(wù)全球總監(jiān)Mark Skilton說。
如果沒有簡(jiǎn)單的應(yīng)用程序可移植性,廠商鎖定是難以避免的,專家說。“如果IT不喜歡云供應(yīng)商通過他的服務(wù)等級(jí)協(xié)議所提供的服務(wù),那么他將要轉(zhuǎn)移到另一個(gè)云提供商上去,Bill Claybrook說。Bill Claybrook是美國(guó)馬薩諸塞州康科德的New River Marketing Research公司的總裁兼分析師。今天,從臨時(shí)應(yīng)用程序中遷移,通常只需要通過一秒鐘的時(shí)間,“舉個(gè)例子,從Amazon EC2轉(zhuǎn)移應(yīng)用程序或者數(shù)據(jù)到Terremark或Rackspace就不容易”Claybrook說。
企業(yè)遷移到云平臺(tái)上即使運(yùn)行和前一個(gè)供應(yīng)商相同的軟件,軟件中的任何變化都會(huì)導(dǎo)致性能問題。提供應(yīng)用程序的可移植性,不僅僅是應(yīng)用程序本身的可移植性,Claybrook說。來(lái)源云和目標(biāo)云很可能有很大的不同:不同的管理程序,支持不同的操作系統(tǒng),不同的安全性,存儲(chǔ)和網(wǎng)絡(luò)模型和支持不同的數(shù)據(jù)庫(kù)系統(tǒng)等。同時(shí),工作在來(lái)源云的管理工具,可能無(wú)法在目標(biāo)云端工作等等。
從技術(shù)角度來(lái)看,云中可移植性應(yīng)用程序的最大障礙是缺乏標(biāo)準(zhǔn)化的云API,來(lái)用于供應(yīng)商或云服務(wù)供應(yīng)商開發(fā)自己以技術(shù)為基礎(chǔ)的產(chǎn)品。如今,Skilton說,應(yīng)用程序的可移植性思考,是從可移植性轉(zhuǎn)移到API公開上。API互操作性使用戶能夠使用通用的開放式API在不同的云端使用應(yīng)用程序。
一個(gè)API的定義可能不是完全透明的,這會(huì)導(dǎo)致許多問題。有時(shí)候,一個(gè)看似開放的API標(biāo)準(zhǔn),其實(shí)并不是,因?yàn)樗话谝粋€(gè)特定的平臺(tái)上,Skilton說。這消除了周圍使用該API的靈活性。
其他兩個(gè)可移植性問題是難以移植的數(shù)據(jù)庫(kù)模式和訪問與管理存儲(chǔ)在云端數(shù)據(jù)的客戶權(quán)益不確定性。“即使你可以訪問你的數(shù)據(jù),你不一定能把它加入到另外一個(gè)系統(tǒng)上,因?yàn)閼?yīng)用程序的數(shù)據(jù)模式不一定兼容,”Cornell說。
Skilton說,在如SQL的關(guān)系數(shù)據(jù)庫(kù)中的文件格式是不容易移植的,因?yàn)楫?dāng)數(shù)據(jù)被分割在多個(gè)數(shù)據(jù)庫(kù)時(shí),數(shù)據(jù)庫(kù)中的關(guān)系必須保持一致。今天,結(jié)構(gòu)化數(shù)據(jù)庫(kù)的可移植性仍然很困難。其中一個(gè)答案是使用NoSQL或非結(jié)構(gòu)化數(shù)據(jù)作為數(shù)據(jù)封裝和存儲(chǔ)的首選標(biāo)準(zhǔn)。
數(shù)據(jù)訪問問題是服務(wù)相關(guān)的數(shù)據(jù)生命周期管理的一個(gè)方面。其中的例子包括移植數(shù)據(jù)的權(quán)限和刪除存儲(chǔ)在云中的數(shù)據(jù)的權(quán)限,Skilton說。
專家表示,關(guān)于數(shù)據(jù)訪問,企業(yè)在合同談判中必須立場(chǎng)堅(jiān)硬。全面披露是否允許第三方訪問你的數(shù)據(jù),Claybrook說。例如,云服務(wù)供應(yīng)商能否被迫提供數(shù)據(jù)訪問給第三方,比如警察?你是否控制數(shù)據(jù)的物理位置?
初期的可移植性應(yīng)用程序標(biāo)準(zhǔn)
一些產(chǎn)業(yè)組織,如OASIS,Open Group及OpenStack項(xiàng)目—都是工作在云可移植性和互操作性規(guī)范領(lǐng)域最活躍的組織。只有Open Stack在2012年之前由Rackspace公司拉開序幕—并且Claybrook期望它長(zhǎng)期產(chǎn)生最好的結(jié)果。專家說,“然而,今天的一切都是不成熟的,而且云供應(yīng)商的支持前途未卜。”
大多數(shù)云服務(wù)供應(yīng)商將支持創(chuàng)建的云計(jì)算標(biāo)準(zhǔn),但這種支持的很大一部分將是空口的應(yīng)酬話,Cornell說。他們不會(huì)嚴(yán)格堅(jiān)持標(biāo)準(zhǔn),因?yàn)樗麄円阉麄兊漠a(chǎn)品和競(jìng)爭(zhēng)對(duì)的手區(qū)分開來(lái)。他說:“所有的廠商都希望把客戶鎖定于自己的產(chǎn)品,”他說。通常情況下,除非需求是巨大的,不然供應(yīng)商是不會(huì)圍繞標(biāo)準(zhǔn)蹦跳的,因?yàn)樗荰CP / IP協(xié)議。
與此同時(shí)云可移植性的提示
雖然標(biāo)準(zhǔn)正在制定中,企業(yè)承擔(dān)促進(jìn)整個(gè)云平臺(tái)應(yīng)用程序的可移植性的負(fù)擔(dān)。專家提供了以下最佳實(shí)踐:
“請(qǐng)確保應(yīng)用程序及其支持的組件,如數(shù)據(jù)庫(kù)和工具,不依賴于操作系統(tǒng)和底層的云基礎(chǔ)設(shè)施,”Claybrook建議。
Cornell說,協(xié)商訪問數(shù)據(jù)和其他設(shè)施。一旦合同簽訂并且數(shù)據(jù)移動(dòng)到供應(yīng)商系統(tǒng),談判的杠桿作用就被限定了。
查找一個(gè)能夠支持的應(yīng)用程序管理平臺(tái)—如今差不多是可能的了—在一些云計(jì)算環(huán)境中,Claybrook說。這只會(huì)是有價(jià)值的,然而,如果云提供商支持該特定的管理平臺(tái)。
了解的技術(shù)設(shè)施,比如應(yīng)用程序接口(API),提供對(duì)你的云服務(wù)商存儲(chǔ)的數(shù)據(jù)進(jìn)行訪問,Cornell說。
在組織的最高級(jí)別保持?jǐn)?shù)據(jù)托管在云端的決策,而不是讓員工獲得基于云的系統(tǒng)而沒有足夠的審查。
在最后的分析中,如果沒有一個(gè)精明的內(nèi)部應(yīng)用程序支持團(tuán)隊(duì)和一個(gè)服從的云服務(wù)供應(yīng)商,應(yīng)用程序可移植性在今天很難實(shí)現(xiàn)??紤]到替代品和鎖定在組織的互操作性和自由的重要性,專家說。如果組織的可移植性應(yīng)用程序的需求不能得到滿足,接受,那么就不能簡(jiǎn)單的把應(yīng)用程序和數(shù)據(jù)遷移到云端上去。