608
技術社區[雲棲]
經典網絡遷移VPC最佳實踐
摘要:阿裏雲起步於經典網絡,但已經全麵轉向VPC。專有網絡VPC以其在安全、成本和網絡功能方麵的優勢,正受到越來越多用戶的歡迎。在9月6日雲棲社區技術直播中,阿裏雲高級產品專家譚禮銓(李泉)為大家分享了經典網絡遷移VPC最佳實踐,本次分享介紹三種將ECS從經典網絡遷移至VPC網絡的途徑,並闡述三種類型的遷移分別適合怎樣的客戶需求和場景。
本文內容根據嘉賓視頻分享以及PPT整理而成。
本次的分享將主要圍繞以下幾個方麵:
-
雲上進入VPC時代
-
遷移提醒
-
阿裏雲遷移方案概述
-
混掛和混訪方案
-
ClassicLink方案
-
單ECS 遷移方案
一、雲上進入VPC時代
如下圖所示的是阿裏雲的網絡演進情況。阿裏雲其實是在2009年就開始做雲計算的,在一開始的時候使用的都是經典網絡,也就是Classic網絡。到了2014年9月份,阿裏雲推出了VPC產品。在2016年3月份阿裏雲推出了Default VPC,也就是說此時阿裏雲可以為每個用戶提供VPC產品。在2016年的4月份,整個阿裏雲的雲產品都全線接入到了VPC。再到2016年7月份,阿裏雲就開始推行對於新用戶默認使用VPC。2017年6月份,阿裏雲就針對於經典網絡遷移VPC推出了三個解決方案。
以上就是阿裏雲網絡的演進曆程,可以看到阿裏雲其實是慢慢地從經典網絡向VPC進行過渡的,而經典網絡終將退出曆史舞台,所以在這裏建議大家一定要使用VPC,這也是阿裏雲所推薦的網絡類型。
同時也對比看一下AWS的網絡演進情況,如下圖所示,AWS在2009年推出了VPC,在2013年上線了Default VPC。在2013年4月份,AWS也開始推行針對新用戶隻能購買EC2-VPC這樣的實例。而在2014年10月份,AWS推出了ClassLink功能,供經典網絡用戶遷移到VPC使用。
可以說雲上已經進入了VPC時代,但是還有很多存量用戶在使用經典網絡。這是因為無論是阿裏雲還是AWS,隻要是起步於經典網絡的雲服務商,在其上還是會存在很多經典網絡的用戶的,而這部分用戶就需要從經典網絡遷移到VPC。
對比經典網絡和VPC來看,簡單而言,VPC會更加安全,更加便宜,同時其網絡功能也會更多,所以VPC也是推薦大家使用的網絡類型。
首先,從安全角度來說,VPC網絡是基於vxlan的,並且它是使用隧道技術實現的,存在二層的隔離,所以會更加安全;而經典網絡是通過三層的隔離,比如使用像IP table這樣三層的隔離手段實現的,所以相對而言經典網絡的安全性更低一些。從成本的角度來看,因為阿裏雲現在推薦使用VPC,所以對於ECS實例,如果是相同類型的,在VPC網絡環境下的ECS會更加便宜一些。除此之外,針對於VPC這種網絡類型,阿裏雲還推出了共享帶寬包這樣的新型共享帶寬方式,所以也能夠幫助用戶節約一些公網帶寬的成本。在功能方麵,VPC的優點就比較多了,隻有使用了VPC,用戶才有更多的網絡管理功能,比如自定義網絡、子網劃分、多地域私網互通等,並且子網絡有網絡ACL或者共享帶寬包這些產品。以上這些網絡功能都是基於VPC的,所以可以說VPC是用戶在雲上具備網絡管理功能的前提。在經典網絡上,用戶對於網絡進行管理的功能不多,可能隻有ECS上的共有IP地址以及安全組的使用,其他的像上麵提到的自定義網絡或者子網劃分等功能,在經典網絡上都是沒有的。綜上所述,可以說VPC是用戶在雲上具備網絡管理能力的前提。
二、遷移提醒
1、了解VPC
首先,用戶在遷移之前需要先去了解VPC。上麵提到了VPC讓用戶在雲上擁有網絡管理能力,但是這些管理能力需要用戶通過相關的網絡產品來實現,所以在遷移到VPC之前一定要先多了解下VPC,比如如何規劃自己的VPC網絡,使用一個VPC還是兩個VPC,使用什麼網段等問題,以及在VPC內如何使用雲產品、VPC內的ECS如何和公網通信以及多個VPC如何互通等等問題的解決都需要用戶對於VPC有一定的了解。所以對於大家的第一個遷移提醒就是在遷移之前一定要去了解VPC。
2、了解遷移方案以及其限製
第二個遷移提醒就是了解遷移方案以及其限製。阿裏雲針對於從經典網絡遷移到VPC提出了三種解決方案,這三個解決方案各有自己的適用場景以及相關的限製,所以在選擇遷移方案的時候需要先去了解這些。
3、確定遷移方案
第三個遷移提醒就是要去確定一個比較詳細的遷移方案。因為雲上的用戶在經典網絡中可能會存在非常複雜的係統,所以想要遷移到VPC中,可能在正常情況下無法實現一次性遷移完成。因此整個遷移過程必然是分步驟、有節奏、有次序地向VPC中遷移,所以遷移方案就會顯得非常重要。首先可能需要將係統的依賴梳理清楚,然後決定先遷移什麼後遷移什麼,也就是將整體的遷移方案的步驟細化,之後再開始從簡單係統到複雜係統的遷移。除此之外,特別要說明的一點就是在遷移的過程中要注意觀察。需要觀察係統的表現以及相關的監控指標,以及留好回退的準備,比如係統遷移過程中發現一些異常,需要做好預案來退回到原來的係統,來避免一些問題。
三、遷移方案概述
阿裏雲針對於從經典網絡向VPC網絡遷移提供了三個解決方案,它們分別是混掛和混訪方案、ClassicLink方案以及單ECS遷移方案。這三個方案可以獨立使用,也可以組合使用。在大多數情況下,大家都會更具不同的場景使用其中的一個、或者兩個甚至是三個方案。
1、混掛和混訪方案概述
接下來對於這三個遷移方案進行簡單的概述。第一個方案就是混掛和混訪的方案,這個方案首先需要聲明的一點就是它是係統的遷移方案,而不是將經典網絡ECS直接遷移到VPC上去。混掛和混訪方案的基本遷移基本流程如下:
-
新建VPC ECS
-
在新VPC ECS 部署係統
-
將VPC ECS 加入現有業務係統
-
將現有業務係統的經典網絡ECS 從係統中移除
-
將經典ECS釋放
-
完成遷移
對於混掛和混訪方案更加詳細說明一下,其中的混掛就是負載均衡SLB的混掛,也就是如下圖所示的一個SLB的實例可以同時掛載經典和VPC的ECS,而這在之前是存在限製的,也就是不允許這樣去做的。分開來講,這裏的混掛一方麵是說公網SLB支持混掛,另外就是私網的SLB也支持混掛,還有就是私網的VPC類型的SLB也支持混掛。但是,對於私網VPC的SLB混掛存在一個限製就是如果使用4層監聽時經典ECS無法獲取真實來源IP,所以大家需要關注一下是否影響了係統。
混訪的意思指的是RDS以及OSS等雲產品支持混合訪問,也就如下圖所示的像RDS、Mongo、Redis以及OSS等這些雲產品可以被經典和VPC的ECS訪問到。這裏有個注意事項就是這種混訪是需要使用不同的域名的,比如RDS實例A,從經典網絡ECS訪問的域名是Classic.RDSA.aliyun.com,從VPC ECS訪問的域名是VPC.RDSA.aliyun.com,訪問的都是同一個實例。還有這裏需要說明的一點就是:混掛和混訪的方案雖然能夠滿足大部分的場景,但是它不能滿足經典網絡和VPC ECS需要直接通信的場景,也就是說如果用戶的業務係統中經典網絡需要和VPC ECS進行直接通信的話,使用混掛和混訪的方案就無法滿足,比如像使用kafka這種數據分析以及大數據相關的係統,就無法直接使用混掛和混訪的方案,這種場景下就需要使用後麵將會提到的方案。
2、ClassicLink方案概述
簡單而言,ClassicLink方案就是允許Classic的ECS和VPC通信。如上圖所示,Classic的ECS Link到達一個VRouter上,這樣Classic的ECS就能訪問VPC中的ECS以及雲產品等雲資源了。這裏給出了大家在使用ClassicLink方案時的五點提醒:
-
Classic ECS可Link到VPC,Classic網絡以單ECS為粒度的,用戶可以把一台、兩台甚至更多的ECS Link到VPC上。而VPC網絡以VPC為粒度,就是將一台Classic ECS Link到VPC,這個Classic的ECS就能夠訪問VPC中的所有資源了。
-
已Link到VPC的Classic ECS可以訪問VPC內所有資源
-
VPC網絡的ECS隻能訪問已Link的Classic ECS,而不能訪問未Link的Classic ECS和Classic雲產品。
-
目標VPC如是10網段,則要和經典網絡ECS通信的交換機網段必須10.111.0.0/16。這是因為經典網絡和VPC的通信使用的是路由的方式來實現的,為了規避地址衝突,在經典網絡中這個地址段沒有使用,留下來給VPC中的需要使用ClassicLink的ECS使用
-
目標VPC如采用192.168.0.0/16網段,需要在經典網絡ECS增加到該網段路由。這是因為最早阿裏雲的私網主要使用的10網段,對於192網段默認是沒有這條路由的,所以需要用戶進行增加。
3、單ECS方案概述
單ECS方案就是經典網絡ECS通過本方案直接遷移到專有網絡中。當然,這個方案需要重啟ECS,但是不需要用戶去創建鏡像、重新購買ECS等,隻需要將ECS重啟之後就能夠遷移到VPC裏麵了。需要說明的是目前使用該方案遷移還需要進行預約,用戶需要將要遷移的實例列表發給客戶經理。待阿裏雲處理後,用戶方可通過控製台進行預約遷移時間。預約完成後,阿裏雲會根據用戶設置的遷移時間進行遷移,遷移完成後,用戶將收到遷移成功的短信消息提醒。後續該功能還會實現成為用戶可以全部自助完成的,這個功能目前還在開發之中。單ECS遷移方案存在一些限製需要大家注意:
-
暫時還不支持經典網絡係列1類型ECS的遷移,阿裏雲現在也正在解決這個問題。目前用戶可以先將係列1類型的ECS升級之後再進行遷移。
-
遷移過程中ECS需要進行重啟,需要用戶關注對係統的影響。
-
目前使用此遷移方案,ECS的公網IP和私網IP都會變化。後續阿裏雲將會先支持公網不變,在未來,也會努力實現私網IP不變。
-
遷移到的目標VPC的交換機的可用區必須和待遷移的ECS的可用區相同,也就是目前不能跨可用區遷移。
-
遷移過程中實例ID及登錄信息不變。
-
包年包月購買方式的實例遷移過程中不需要額外付費。從新的計費周期開始,按同規格專有網絡的價格計算。並且遷移到VPC後,ECS的使用費用會降低。
-
遷移前如有續費變配未生效訂單或未支付訂單,遷移後該訂單將被取消且不能恢複,客戶需要重新下單。
-
遷移到VPC後,若ECS有使用其它雲服務,需將訪問方式調整到VPC訪問方式(雲產品混訪方案)。
四、混掛和混訪方案
混掛和混訪方案Demo
在如圖下所示的簡單係統中,經典網絡中的一個公網負載均衡SLB掛載了2台ECS實例,並使用了RDS和OSS這兩個雲產品,而現在要將這個業務係統通過混掛和混訪方案遷移到VPC中。
混掛和混訪方案遷移核心流程
首先,要規劃VPC網絡,並且建立VPC網絡環境,也就是需要創建好VPC並且創建好交換機。如果大家對這一部分不熟悉可以參考VPC最佳實踐-網絡規劃篇(https://yq.aliyun.com/topic/94)。
第二步就是在VPC內新建ECS,並且在VPC ECS上部署應用。這個時候特別需要注意的是在VPC ECS上部署的應用在訪問OSS和RDS的域名時需要使用VPC域名,這也是與在經典網絡上應用訪問OSS和RDS的不同之處。在部署完成之後,還需要測試應用能否正常訪問OSS和RDS。
第三步就是將VPC的ECS加入到公網SLB當中,也就是如下圖所示通過混掛把VPC的ECS也加入到SLB裏麵。這個時候需要注意公網SLB中VPC ECS的健康檢查狀態,如果沒有問題的話,經典網絡和VPC中的ECS應該能夠同時提供服務。
第四步就是去檢查如果業務係統工作是否正常。如果係統正常,並且VPC中的這兩台ECS實例也能夠正常地處理業務的請求和訪問,這時候就可以將經典網絡中的這兩台ECS從公網SLB中移除掉。在將經典網絡中的ECS移除之後,便隻剩下VPC這兩台ECS提供服務了,隻不過此時VPC中的ECS會跨網絡地訪問經典網絡中的RDS和OSS。
第五步就是將RDS切到VPC中。RDS提供了切換網絡類型的功能,能夠從經典網絡切換到VPC並且將經典網絡的域名刪除。而OSS本身不需要切換,因為OSS的每個地域都提供了一個統一的域名,所以隻需要不使用經典網絡訪問域名即可。
最後,如果運行一段時間之後發現係統運行正常,沒有任何問題,就可以將經典網絡這兩台ECS釋放掉,此時也就完成了整個係統從經典網絡到VPC的遷移。這裏需要說明的一點就是公網SLB不需要遷移,因為公網SLB其實是在VPC外麵的,所以它既可以掛載經典網絡的ECS也可以掛載VPC的ECS,而本身不需要遷移。
如下圖所示的是一個相對比較複雜的係統,整個係統經過了SLB之後掛載了兩台ECS,之後這兩台ECS又去訪問私網的SLB,私網的SLB下麵又掛載了兩台ECS,而它們又要去訪問OSS和RDS。對於這樣一個比較複雜的係統而言,與前麵提到的相比有一個特別的地方就是之前提到了混掛指的是SLB的混掛,混訪指的是RDS以及OSS這些的混訪,但是SLB隻支持混掛不支持混訪,所以在如下圖所示的這個係統裏麵需要先遷移私網的SLB。那麼,首先需要在VPC裏麵新建ECS,用於私網SLB後的ECS遷移。之後再在VPC中建立對應的SLB VPC實例並掛載ECS。最後,遷移公網SLB的ECS並配置,也就是修改程序使用SLB VPC實例。需要說明的核心的一點就是:對於私網SLB而言,是不支持混訪的,所以對於私網SLB的遷移是需要在VPC中建立對應的SLB實例來處理的。
混掛和混訪遷移控製台Demo請參考本次分享的視頻回顧演示: https://yq.aliyun.com/webinar/play/287
五、ClassicLink遷移方案
ClassicLink遷移方案底層的技術和原理
首先簡單介紹一下ClassicLink方案底層的技術和原理。經典網絡和VPC互通與經典網絡和經典網絡互通的底層實現是一致的,其實是同一套係統,因此內網延遲不變,私網帶寬限速這些相關的網絡屬性是不會發生變化的。另外,宕機遷移、熱遷移、停止、啟動、重啟、更換係統盤等操作不會改變已建立的ClassicLink鏈接。也就是說如果一個經典網絡的ECS Link到一個VPC上,那麼這台ECS發生了宕機遷移或者重啟這些都不會改變ClassicLink。經典網絡是一個網絡平麵,VPC是另一個網絡平麵,ClassicLink是通過路由將這兩個網絡平麵拉齊,讓其具備互通的條件。因此使用ClassicLink功能,首先要避免網絡地址衝突,做好網絡地址規劃。阿裏雲經典網絡中使用的地址段是10.0.0.0/8(不包括10.111.0.0/16),因此隻要VPC的地址段與經典網絡的地址段不衝突,就可以通過ClassicLink功能私網通信。可以與經典網絡互通的VPC地址段有172.16.0.0/12、10.111.0.0/16、192.168.0.0/16。
ClassicLink遷移方案Demo
ClassicLink方案的基本遷移流程也比較簡單。首先,針對VPC去開啟ClassicLink的功能。第二步,將經典網絡ECS鏈接到VPC來打通。第三步,添加ClassicLink安全組規則。當這三步完成之後,這台經典的ECS就可以和VPC進行通信了,接下來可以結合他們的通信做數據遷移或者使用混掛的方案進行遷移。
下圖所展示的就是第一步開啟VPC的ClassicLink功能。這裏需要注意的就是在VPC的路由表中,不能有目標網段為10.0.0.0/8自定義路由條目。若VPC的網段是10.0.0.0/8,需要確保和經典網絡ECS通信的VPC的交換機的網段在10.111.0.0/16內。若VPC的網段是192.168.0.0/16,需要在經典網絡ECS中增加192.168.0.0/16指向私網網卡的路由。
第二步就是將經典網絡的ECS連接到VPC。這裏需要注意的是最多允許1000台經典網絡ECS鏈接到同一個VPC,並且一台經典網絡ECS隻能鏈接到一個VPC,並且這個鏈接必須要是同賬號同地域的,比如北京的ECS鏈接到上海的VPC是不可以的,同時也不支持A賬號的ECS鏈接到B賬號的VPC。如果要將賬號A的ECS鏈接到賬號B的VPC,可以ECS從賬號A過戶到賬號B。而申請ECS過戶需要通過提交工單的方式,並且在過戶前,用戶需要確保已了解ECS實例過戶須知。
第三步就是添加ClassicLink安全組規則。
目前為了方便用戶的使用,阿裏雲提供了以下三種授權方式:
-
經典網絡與專有網絡相互授權訪問,這種方式也是阿裏雲推薦使用的授權類型。
-
授權專有網絡實例訪問經典網絡實例。
-
授權經典網絡實例訪問專有網絡實例。
單ECS遷移方案Demo
之前也提到了目前如果想要使用單ECS遷移方案還需要用戶提供實例ID給客戶經理,客戶經理給到阿裏雲處理之後,用戶就可以在阿裏雲進行預約遷移了。下圖所展現的就是預約遷移的截圖,如果預約完成,在ECS控製頁的概覽頁麵裏麵會有一個待遷移事件,用戶之後可以再去選擇預約遷移的時間,阿裏雲就會幫助用戶在這個預約的時間點裏麵進行遷移,遷移完成之後還會通過短信通知用戶。
更多詳細信息請參考:
雲棲社區網絡產品專題 https://yq.aliyun.com/topic/94
經典網絡遷移VPC 詳細文檔 https://help.aliyun.com/document_detail/55051.html
最後更新:2017-09-14 13:02:46