云遷移指的是企業(yè)從傳統(tǒng)的平臺(tái)向云平臺(tái)的遷移,因?yàn)榕c傳統(tǒng)的應(yīng)用平臺(tái)相比,云計(jì)算平臺(tái)的優(yōu)點(diǎn)在于強(qiáng)大的計(jì)算能力、存儲(chǔ)能力、多樣化的服務(wù)以及高性價(jià)比。
云遷移指的是企業(yè)從傳統(tǒng)的平臺(tái)向云平臺(tái)的遷移,因?yàn)榕c傳統(tǒng)的應(yīng)用平臺(tái)相比,云計(jì)算平臺(tái)的優(yōu)點(diǎn)在于強(qiáng)大的計(jì)算能力、存儲(chǔ)能力、多樣化的服務(wù)以及高性價(jià)比。
隨著云計(jì)算不斷發(fā)展,越來越多的企業(yè)有業(yè)務(wù)向云遷移的需求。然而,現(xiàn)實(shí)總是很骨感。我們?nèi)绾尾拍軐⑷辗e月累的本地?cái)?shù)據(jù)和系統(tǒng)轉(zhuǎn)移到別的計(jì)算機(jī)?畢竟云端看不見也摸不著,怎么才能不把事情搞砸?
在實(shí)際遷移的過程中,總是有很多的阻礙,業(yè)務(wù)停機(jī)需協(xié)調(diào)、數(shù)據(jù)備份與驗(yàn)證、環(huán)境重建與配置、數(shù)據(jù)導(dǎo)入與驗(yàn)證……這些繁瑣的步驟,長(zhǎng)時(shí)間的遷移周期,極大可能導(dǎo)致業(yè)務(wù)停機(jī)。
但面對(duì)業(yè)務(wù)上云的收益,遷移勢(shì)在必行。如何能讓遷移不那么痛苦?以下是我們需要考慮的事宜:遷移類型、保留和清理的內(nèi)容、基礎(chǔ)設(shè)施類型和大小、峰值測(cè)試準(zhǔn)備。
1、遷移類型
我們需要了解為什么要將應(yīng)用程序遷移到云上,同時(shí)我們也需要大致了解遷移結(jié)果。遷移的方法主要有三種:重新托管(re-host)、更換平臺(tái)(re-platform)和重構(gòu)(refactor)。
重新托管是云遷移時(shí)最常見的策略。它不會(huì)改變應(yīng)用程序創(chuàng)建或運(yùn)行的方式。例如,如果目前有Python(計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言)代碼,使用PostgreSQL(開源的對(duì)象-關(guān)系數(shù)據(jù)庫(kù)),并通過Apache(開源網(wǎng)頁(yè)服務(wù)器軟件)為應(yīng)用程序提供服務(wù)。這就好比搬入一個(gè)房型完全一致的新房子。所有房間布局、家具都和以前一樣。當(dāng)我們住進(jìn)去時(shí),就會(huì)感覺很熟悉。
若當(dāng)前應(yīng)用程序中的某組件運(yùn)行情況不甚良好,我們可能需要考慮更換平臺(tái)。這種情況下,我們會(huì)更改架構(gòu)中的至少一個(gè)組件。以數(shù)據(jù)庫(kù)的更改為例,內(nèi)部數(shù)據(jù)保持相同,但其組構(gòu)方式會(huì)有些許不同。?
相比其他的方法,重構(gòu)應(yīng)用程序會(huì)比較復(fù)雜。但對(duì)于能夠使用此類方法的公司或應(yīng)用程序來說,大有利處。重構(gòu)對(duì)代碼進(jìn)行編輯以滿足業(yè)務(wù)需求。具體細(xì)節(jié)因情況而異,但通常會(huì)涉及對(duì)架構(gòu)組件或組件之間相互關(guān)系的更改。
2、保留 VS 清理
搬家可以讓我們好好整理東西,看看哪些要保留,哪些可以送人或丟棄。從應(yīng)用程序的角度來看,遷移到云的過程就和搬家過程類似。
盡管現(xiàn)在云存儲(chǔ)的價(jià)格并不貴,但有些東西不再適合存儲(chǔ),或者說,至少不能和我們的主應(yīng)用程序存儲(chǔ)在一起。若因?yàn)橄嚓P(guān)政策法規(guī)有些數(shù)據(jù)無(wú)法被丟棄,我們可以選擇不同的存儲(chǔ)類別來存放主程序之外的數(shù)據(jù)。
3、選擇正確類型和規(guī)模大小
最令人困擾的部分通常是選擇合適的云基礎(chǔ)設(shè)施類型和規(guī)模大小。
通過云存儲(chǔ)及服務(wù)器,我們可在幾分鐘,甚至幾秒鐘內(nèi)完成擴(kuò)展或縮減資源。若借助托管服務(wù),甚至可以自動(dòng)完成任務(wù)。如果應(yīng)用程序具備擴(kuò)展性,就好比有了一間魔法屋,可以生成任何房型和所需的便捷設(shè)施。我們可以自主操作確保使用合適且性價(jià)比高的資源,這一點(diǎn)也可以通過相關(guān)圖表直觀呈現(xiàn)。
對(duì)于首次登入云端的應(yīng)用程序來說,需要先進(jìn)行測(cè)試。
雖然云服務(wù)能夠快速啟動(dòng)并嘗試使用不同架構(gòu),但不能保證所有設(shè)置適合我們的應(yīng)用程序。例如,運(yùn)行一個(gè)單獨(dú)的服務(wù)器實(shí)例可能會(huì)比選擇無(wú)服務(wù)器便宜。但是在測(cè)試前,我們是無(wú)法知道這一點(diǎn)的。