當(dāng)把應(yīng)用遷往云時,我們不能只是把應(yīng)用往云中一放就奢求它們能夠在其中正常運(yùn)行了。制定一個完備的遷移計(jì)劃可確保您的應(yīng)用運(yùn)行表現(xiàn)良好,并具有較高的成本效益。
云遷移并不只是把一個虛擬機(jī)從你的內(nèi)部部署數(shù)據(jù)中心移出那么簡單,它需要重新部署一個能夠正常運(yùn)行的重要服務(wù)。企業(yè)(尤其是那些比較傳統(tǒng)的企業(yè))已經(jīng)開始認(rèn)識到云的價值所在,其中就包括了云的成本效益和靈活性。應(yīng)用程序云遷移所涉及的內(nèi)容頗多,在實(shí)際實(shí)施中也會遇到各種各樣的挑戰(zhàn)。在遷移應(yīng)用之前,應(yīng)制定一份遷移計(jì)劃以避免潛在的障礙。
現(xiàn)在,讓我們來考慮一個專用的關(guān)鍵任務(wù)應(yīng)用。多年的投資經(jīng)營已經(jīng)造就了這樣一個位于垂直集成數(shù)據(jù)中心內(nèi)的IT資產(chǎn),其中包括了定制的網(wǎng)絡(luò)、存儲和計(jì)算等資源。開發(fā)和運(yùn)行這樣一個平臺環(huán)境需要在硬件上的大筆投入和數(shù)以百計(jì)的技術(shù)工時。為了將應(yīng)用遷往云,必須找到一個能夠?qū)⑦@些原本內(nèi)部部署的IT資源轉(zhuǎn)化成為虛擬軟件層的方法。
在某些情況下,用戶是無法移動和改變,或者移植應(yīng)用的。例如,企業(yè)用戶的Oracle ERP系統(tǒng)就無法簡單地被遷至他們新的亞馬遜云賬戶上。支持繁重工作負(fù)載(例如信用卡欺詐分析)的高性能計(jì)算則是另一個復(fù)雜的遷移案例。
這些工作負(fù)載原來都是在超級計(jì)算機(jī)上運(yùn)行的,它們并不是為可在商品基礎(chǔ)設(shè)施上水平擴(kuò)展而開發(fā)的。此外,行業(yè)中的傳統(tǒng)企業(yè)(例如金融服務(wù)和醫(yī)療保健等)仍然擁有著運(yùn)行其業(yè)務(wù)核心部分的大型商業(yè)服務(wù)器。這些應(yīng)用程序有著重要的遺留依賴性,它們必須嚴(yán)格遵守某些合規(guī)性行業(yè)標(biāo)準(zhǔn)。
由于必須把定制硬件、遺留系統(tǒng)依賴對象(例如某些工作負(fù)載必須訪問一個非常老舊的數(shù)據(jù)庫)和一個復(fù)雜的網(wǎng)絡(luò)移動到一個完全不同的IT環(huán)境中,所以這些原有應(yīng)用程序的云遷移工作就成為了一大挑戰(zhàn)。
評估階段
應(yīng)用云遷移的路徑必須是經(jīng)過精心設(shè)計(jì)的。一份Gartner分析報(bào)告總結(jié)了制定應(yīng)用遷移計(jì)劃時可供選擇的五個主要方法:
移植:在基礎(chǔ)設(shè)施即服務(wù)(IaaS)中重新部署應(yīng)用而無須做出任何修改。
重構(gòu):在平臺即服務(wù)(PaaS)上運(yùn)行應(yīng)用。
修改:修改或擴(kuò)展現(xiàn)有代碼以求適應(yīng)新的云環(huán)境。
重建:重新開發(fā)一個PaaS環(huán)境。
替換:放棄現(xiàn)有應(yīng)用,轉(zhuǎn)而以軟件即服務(wù)(SaaS)方式實(shí)施。
這些方法為處理所有各種形式的云遷移(例如IaaS、PaaS和SaaS)提供了一個通用的說明,其中包括使用一個在線SaaS產(chǎn)品(如Salesforce)替代用戶現(xiàn)有傳統(tǒng)客戶關(guān)系管理的選項(xiàng)。
為了針對應(yīng)當(dāng)遷移什么這個問題做出一個正確的回答,首先應(yīng)評估明確工作負(fù)載需求,例如服務(wù)水平協(xié)議(SLA)、性能以及合規(guī)性等。
此外,用戶還必須運(yùn)行一個試運(yùn)行項(xiàng)目或所謂的概念驗(yàn)證項(xiàng)目,同時測試工作負(fù)載在候選云環(huán)境中的運(yùn)行性能和安全性。遷移試運(yùn)行項(xiàng)目可幫助用戶學(xué)習(xí)相關(guān)技能和積累經(jīng)驗(yàn),具體包括確定運(yùn)行應(yīng)用所需的虛擬機(jī)數(shù)量、存儲類型和容量、以及網(wǎng)絡(luò)帶寬。用戶還應(yīng)當(dāng)了解與云供應(yīng)商相關(guān)的所有限制。了解云資源和服務(wù)所需的成本,替代原有安全設(shè)施(例如防火墻)的安全措施,以及代替用戶各種傳統(tǒng)存儲硬件的存儲服務(wù)。
切勿對緊耦合應(yīng)用啟動應(yīng)用遷移計(jì)劃。相反,應(yīng)當(dāng)選擇獨(dú)立應(yīng)用進(jìn)行云遷移,并確保有一個遷移計(jì)劃。例如,當(dāng)要把一個簡單的Drupal網(wǎng)站遷移至亞馬遜的云平臺時,明確地知道各種需求是非常重要的。用戶可能需要從負(fù)載均衡器轉(zhuǎn)至亞馬遜網(wǎng)絡(luò)服務(wù)(AWS)的彈性負(fù)載平衡,或者將媒體文件從塊存儲服務(wù)轉(zhuǎn)至亞馬遜的簡單存儲服務(wù)(S3)。
使用正確的策略與工具
當(dāng)為更重要的工作負(fù)載制定應(yīng)用遷移計(jì)劃時,應(yīng)采用一種分階段的方法。采用這種方法可以讓用戶在某個階段失敗時把那些服務(wù)恢復(fù)到內(nèi)部部署環(huán)境中以便在再次嘗試前進(jìn)行問題修正和重新設(shè)計(jì)。為了降低風(fēng)險,請務(wù)必使用可提高所使用云資源可控性和透明度的正確可用工具。這些工具將能夠幫助用戶更好地了解云資源的使用、成本以及安全配置等情況。AWS Cost Explorer 和 AWS Trusted Advisor較適用于上述這些任務(wù),同時Cloudyn、Dome9以及其他第三方供應(yīng)商所提供的工具也被證明勝任以上工作。
應(yīng)用遷移的另一個重要方面就是數(shù)據(jù)遷移。這項(xiàng)工作需要考慮所涉及的數(shù)據(jù)容量以及與用戶內(nèi)部部署數(shù)據(jù)存儲庫之間的數(shù)據(jù)同步。在這個階段,IT團(tuán)隊(duì)需要制定一個在生產(chǎn)日一次性遷移數(shù)據(jù)的計(jì)劃,同時按照實(shí)際需要實(shí)現(xiàn)不同環(huán)境之間數(shù)據(jù)的統(tǒng)一。
云供應(yīng)商將提供服務(wù)以支持在一個合理的時間段內(nèi)完成數(shù)據(jù)遷移——具體時間取決于用戶需要傳輸?shù)臄?shù)據(jù)量。為了支持?jǐn)?shù)據(jù)同步,用戶還需要確定應(yīng)使用哪些工具。
每一家云服務(wù)供應(yīng)商都有其第三方工具與服務(wù)生態(tài)系統(tǒng)。在大多數(shù)情況下,這些第三方供應(yīng)商有助于填補(bǔ)任何特點(diǎn)與功能之間的空白。例如,通過使用亞馬遜的云,AWS認(rèn)證的合作伙伴就能夠提供針對入侵的檢測與防御技術(shù),而這恰恰是AWS自身所不支持的功能。還有另一個關(guān)于Heroku開發(fā)平臺的例子。Heroku的Elements Marketplace提供了有助于連接和擴(kuò)展不同類型數(shù)據(jù)庫的附加組件。
制定一份云應(yīng)用遷移計(jì)劃是非常具有挑戰(zhàn)性的工作,同時,當(dāng)實(shí)際執(zhí)行效率不高時,將有可能導(dǎo)致出現(xiàn)與任何昂貴的傳統(tǒng)IT項(xiàng)目相同的成本風(fēng)險。為了盡量減少出現(xiàn)問題的概率,應(yīng)繪制一份應(yīng)用程序與網(wǎng)絡(luò)架構(gòu)的明細(xì)圖。然后,試運(yùn)行之以確定其實(shí)際效果。
通過制定一份合適的應(yīng)用遷移計(jì)劃,把應(yīng)用程序遷往云就可以讓企業(yè)充分享受到云所帶來的好處,同時也不會影響業(yè)務(wù)的連續(xù)性、魯棒性以及安全性。