企業(yè)須知:應(yīng)用程序的可移植性
為什么應(yīng)用程序的可移植性已經(jīng)成為業(yè)界的一個關(guān)注重點?
這里至少有兩個原因:
1. 很多已經(jīng)構(gòu)建私有云計算或者正在考慮建立私有云計算的IT組織都把混合云計算視為他們云計算的最終發(fā)展目標(biāo)。這就意味著,IT組織需要在他們的私有云計算和一個或多個公共云計算(或者在兩個或多個公共云計算之間)實現(xiàn)應(yīng)用程序/數(shù)據(jù)的往復(fù)遷移。在云計算之間遷移應(yīng)用程序并不是一件簡單的事,因為我們需要它們能夠在不同的云計算中提供相同的性能水平并正常運行。提供應(yīng)用程序的可移植性不同于僅僅讓應(yīng)用程序本身變得可移植。雖然源云和目標(biāo)云之間非常相似,但是它們在很多方面也有著很大的區(qū)別:不同的管理程序;不同的操作系統(tǒng)支持;不同的安全、存儲和網(wǎng)絡(luò)模式;不同的數(shù)據(jù)庫系統(tǒng)支持;以及不同的管理工具等,通常在源云中能夠正常工作的管理工具往往在目標(biāo)云中就可能無法正常使用。
2. IT組織不希望受制于單一的云計算或云計算供應(yīng)商。如果IT部門不喜歡某一云計算供應(yīng)商通過其SLA提供的服務(wù),那么它就會希望更換另一家云計算供應(yīng)商而又不用重新經(jīng)歷一遍之前應(yīng)用程序遷移所帶來的痛苦。例如,從Amazon EC2把應(yīng)用程序/數(shù)據(jù)遷移至Terremark或Rackspace就不是一件容易的工作。
云計算標(biāo)準(zhǔn)的缺失已成為一個廣受關(guān)注的問題,因為它能夠在某種程度上減輕(當(dāng)然并不會是全部)IT部門所面臨的應(yīng)用程序可移植性問題。
在這些領(lǐng)域中,應(yīng)用程序可移植性的***障礙是什么?
• 法律 --- 知識產(chǎn)權(quán)問題,即存放在云計算中信息的所有權(quán)問題(第三方是否被允許訪問你的數(shù)據(jù),或者云計算供應(yīng)商是否能夠被要求為第三方(例如警方)提供對你的數(shù)據(jù)的訪問)、對數(shù)據(jù)物理位置的控制、以及法規(guī)遵從性都是一些重要的法律方面障礙。
• 技術(shù) --- 從技術(shù)角度來看,可移植性的***障礙在于標(biāo)準(zhǔn)化云計算API的缺失,供應(yīng)商/云計算廠商可以在開發(fā)它們基于技術(shù)的產(chǎn)品中使用標(biāo)準(zhǔn)化云計算API。
• 專用供應(yīng)商的競爭態(tài)勢 --- 大多數(shù)供應(yīng)商/云計算供應(yīng)商都支持建立云計算標(biāo)準(zhǔn)。但是他們,尤其是專用供應(yīng)商們,并不會嚴格遵守標(biāo)準(zhǔn),因為他們希望他們的產(chǎn)品要與競爭對手的產(chǎn)品有所區(qū)別。所有的供應(yīng)商們都希望鎖定客戶,讓客戶只能使用他們一家的產(chǎn)品。他們對標(biāo)準(zhǔn)的支持可能僅僅停留在表面上,(除非對標(biāo)準(zhǔn)的需求是壓倒性的,例如TCP/IP),而且并不總是按照標(biāo)準(zhǔn)進行開發(fā)。
OASIS、Open Group以及其他組織對應(yīng)用程序可移植性的主動性是如何的?
• OASIS --- OASIS基本上僅處于起步階段。如果你看過2012年一月的倡議者名單,那么你就會發(fā)現(xiàn)沒有一家公共云計算供應(yīng)商名列其上,例如Amazon、Terremark、Rackspace或Savvis。IBM公司是唯一一家名列其中的公共云計算供應(yīng)商(需要指出的是,IBM同時也是一家私有云計算供應(yīng)商)。在云計算應(yīng)用程序可移植性方面有任何實質(zhì)性進展之前,Hell都不會在這方面有任何的動作。他們只是致力于規(guī)范制定。
• Open Group --- 他們只是在2012年年初提出了一個規(guī)范。除了我不知道哪些廠商正在致力于規(guī)范的制定以外,我對他們的意見與OASIS相同。
• OpenStack項目 --- 在致力于云計算互操作性(基本上其概念與應(yīng)用程序可移植性相同)的組織中,OpenStack項目可能是最有可能產(chǎn)出有價值東西的一個。他們的目標(biāo)在于讓私有云計算供應(yīng)商和公共云計算供應(yīng)商采用OpenStack云計算技術(shù)。這將使得云計算之間的應(yīng)用程序/數(shù)據(jù)遷移變得更容易。
企業(yè)可以采取哪些簡單的措施以提高他們應(yīng)用程序遷移至公共云計算的可移植性?
• 確保應(yīng)用程序及其支持的組件,例如數(shù)據(jù)庫和工具,不依賴于某一操作系統(tǒng)和一個低層的云計算基礎(chǔ)設(shè)施。
• 為你的應(yīng)用程序找到一個管理平臺,它可以支持應(yīng)用程序在大量云計算環(huán)境中正常運行(但如果云計算供應(yīng)商沒有使用特定的管理平臺,那么它也是沒有價值的)。
實際上,這兩個建議對你的幫助非常小,因為它們只是解決了應(yīng)用程序可移植性中很小一部分的問題。