VPC最佳實踐(六):業務如何從經典網路平滑遷移到VPC

雪葭發表於2017-06-21

專有網路VPC(Virtual Private Cloud)正受到越來越多使用者的歡迎,已經成為雲上使用者的首選網路型別,也是阿里雲預設推薦的網路型別。然而,雲上還有很多存量使用者在使用經典網路,這些使用者如何從經典網路遷移到VPC呢?本文將介紹相關的遷移方案。


方案概述

阿里雲將提供三種遷移方案。這三個方案可以獨立使用,也可以組合使用,以滿足不同的遷移場景。


混掛和混訪方案

混掛和混訪方案是一種系統平滑遷移方案,即使用者通過在VPC中新建ECS等雲產品例項,然後將系統平滑遷移到VPC。當所有系統都遷移到VPC後,再將經典網路內的資源釋放,從而完成經典網路到VPC的遷移。

在使用本方案時,請注意:

  • 本方案可以滿足絕大部分系統的遷移要求,但無法實現有經典網路ECS和專有網路ECS私網通訊需求的系統的遷移。

  • 本方案僅用於經典網路遷移到VPC。



混掛



負載均衡(SLB)混掛,即一個負載均衡例項可以同時掛載經典網路和VPC型別的ECS作為後端伺服器來接收監聽轉發的請求,支援虛擬伺服器組形式的混掛。

支援混掛的負載均衡例項型別如下:

  • 公網負載均衡例項

  • 私網負載均衡例項(包括經典網路和VPC)

    注意:VPC私網負載均衡例項同時掛載經典網路和專有網路ECS時,如果使用四層(TCP和UDP協議)監聽,目前無法在經典網路ECS上獲取客戶端的真實IP,但在專有網路ECS上還可以正常獲取客戶端的真實IP。對七層監聽(HTTP和HTTPS協議)沒有影響,可以正常獲取客戶端的真實IP

混訪

雲資料庫RDS和物件儲存OSS等雲產品支援混訪,即支援同時被經典網路和專有網路中的ECS訪問。注意需要使用不同的訪問域名,一個是經典網路私網訪問域名,另外一個是專有網路訪問域名。

雲資料庫RDS支援混訪的操作指南,參考經典網路遷移VPC-RDS等支援混訪說明

物件儲存OSS的專有網路訪問域名,參考訪問域名和資料中心

ClassLink方案

ClassicLink方案可以將一臺經典網路ECS連結到一個VPC,從而實現經典網路ECS直接通過私網訪問VPC內的雲資源(如ECS,RDS,SLB等)。

ClassicLink功能已經在華北2(北京)、華南1(深圳)、華東2(上海)、華東1(杭州)上線,其它地域近期會陸續上線。該功能當前處於灰度中,如有需要請聯絡您的客戶經理

使用ClassicLink方案時,請注意:

  • 經典網路ECS例項只能通過ClassicLink連結到同賬戶、同地域的一個VPC。

  • ClassicLink連結沒有傳遞性,經典網路ECS例項不能通過連結的VPC的高速通道訪問另外一個VPC的雲服務。

  • ClassicLink的VPC預設支援172.16.0.0/12網段。如果VPC使用的是其它網段,需要注意以下兩點:

    • 如果要Link到的VPC的網段是10.0.0.0/8,那麼和經典網路ECS通訊的交換機的網段必須是10.111.0.0/16。

    • 如果要Link到的VPC的網段是192.168.0.0/16,那麼需要在經典網路ECS中增加到192.168.0.0/16網段的路由。

  • 已Link到VPC的經典網路ECS可以訪問VPC內的所有資源,但VPC中的ECS只能訪問已Link的經典網路ECS,不能訪問未Link的經典網路ECS,也不能訪問經典網路內的其它雲產品。

  • 當機遷移、熱遷移、過保遷移、停止、啟動、重啟、更換系統盤等操作,已建立的ClassicLink連結將保持不變。

單ECS遷移方案

單ECS遷移方案,即經典網路ECS通過本方案直接遷移到專有網路中(需重啟ECS)。無需通過建立映象、重新購買等步驟就能把例項遷移到專有網路。


      1. 預約遷移

需要在ECS控制檯的待辦任務中選擇預約例項遷移。預設情況下,符合遷移條件的例項會顯示在預約視窗列表中。

注意:當前預約遷移必須先通過客戶經理申請,請將需要遷移的例項列表提供給客戶經理。待阿里雲處理後,您方可通過控制檯進行預約遷移。

       2. 正式遷移

完成預約後,本遷移工具將在預約時間點開始遷移。遷移完成後,您將收到遷移成功的簡訊訊息提醒。

在使用單ECS遷移方案時,請注意:

  • 暫不支援經典網路系列I型別例項進行遷移。

  • 遷移過程中例項需要進行重啟,請關注對系統的影響。

  • 使用此遷移方案,ECS的公網地址和私網地址都會變化。

  • 遷移的目標交換機的可用區必須和要遷移的ECS例項的可用區相同。

  • 遷移過程中例項ID及登入資訊不變。

  • 包年包月購買方式的例項遷移過程中不需要額外付費。從新的計費週期開始,按照同規格專有網路的價格計算。

  • 遷移前如有續費變配未生效訂單或未支付訂單,遷移後該訂單將被取消且不能恢復,請您重新下單。


各遷移方案使用示例

混掛和混訪方案遷移示例

遷移提醒

在正式遷移之前,請務必先了解專有網路和相關網路產品。專有網路和經典網路存在很大的不同,除了安全隔離外,專有網路讓使用者在雲上具備了網路管理能力,但這些管理需要使用者使用相關的網路產品實現。

注意:以下示例僅供參考,很多系統都比下面的遷移示例複雜很多。在遷移前需要仔細評估,梳理清楚系統依賴,制定嚴謹的遷移方案。

待遷移系統說明

待遷移的經典網路系統如下圖所示,該系統使用了SLB、ECS、RDS、OSS四個產品。公網SLB例項有兩臺ECS作為後端伺服器,ECS上的程式會訪問RDS和OSS。現在要將這個系統遷移到VPC中。

待遷移系統說明

步驟一 準備網路環境



首先,需要準備網路環境。建立專有網路和交換機,確定要遷移的專有網路和交換機的相關資訊。

關於VPC的網路規劃,參考網路規劃

準備網路環境

步驟二 在專有網路中建立ECS並完成配置



如下圖所示,在VPC中新建兩臺ECS,並在ECS上部署程式。注意將RDS和OSS的訪問域名修改為專有網路的訪問域名。配置完成後,需要仔細驗證測試是否可以正常訪問OSS和RDS。

前提條件

準備好RDS和OSS的專有網路訪問域名。

  • RDS可以通過Open API/SDK將經典網路切換到VPC,切換時可以保留經典網路訪問域名。切換後,RDS同時擁有了VPC和經典網路的訪問域名。

    RDS控制檯的網路型別切換功能目前無法保留經典網路訪問域名。

    RDS網路型別切換,參考經典網路遷移VPC-RDS等支援混訪說明

  • 參考訪問域名和資料中心獲取OSS的專有網路訪問域名。

新建VPC ECS並完成配置

步驟三 將專有網路中的ECS新增到公網SLB例項

如下圖所示,將在VPC中新建的ECS新增到公網SLB例項中。新增後,注意觀察SLB例項中新加入的ECS的健康檢查狀態。可以將新加入的專有網路ECS的權重設定小一些,這樣可以在健康檢查狀態正常但是有其它異常時,減少對系統的影響。同時,仔細觀察系統狀態、流量監控、日誌等。

將VPC ECS加入公網SLB

步驟四 將經典網路ECS從公網SLB例項中移除

如下圖所示,當系統執行正常後,將經典網路ECS從公網SLB例項中移除。可以先將經典網路ECS的權重設定為0,待經典網路ECS上無請求流量時再移除。

將經典網路ECS從SLB中移除

步驟五 將RDS和OSS切換到專有網路中

如下圖所示,將RDS和OSS切換到專有網路中。

RDS可以通過控制檯完成網路型別切換,切換後RDS的經典網路訪問域名就刪除了;也可以通過Open API/SDK進行切換,同時保留經典網路和VPC的訪問域名。OSS本身提供經典網路和VPC兩個域名,不需要切換。

將RDS切換到VPC

步驟六 釋放經典網路ECS

如下圖所示,系統執行一段時間無異常後,將經典網路ECS釋放。因為公網SLB例項本身支援掛載專有網路ECS,不再需要遷移。因此,到這裡整個遷移工作就完成了。

釋放經典網路ECS

一個稍微複雜系統的遷移

考慮如下圖所示的相對複雜點的系統遷移。公網SLB例項掛載了兩臺ECS,分別為ECS_1和ECS_2,這兩臺ECS需要訪問一個私網SLB例項。私網SLB例項也掛載了兩臺ECS,分別為ECS_3和ECS_4,這兩臺ECS需要訪問RDS和OSS。

一個複雜點的系統

在這個系統中,由於SLB只支援混掛,不支援混訪。如果按上面的步驟先將公網SLB例項中的後端ECS,ECS_1和ECS_2遷移到VPC,會遇到VPC內的ECS無法訪問經典網路中的私網SLB例項的問題。因此,不能這麼遷移,而需要先遷移私網SLB例項及其後端ECS。基本步驟如下:

  1. 1. VPC內新建兩臺ECS,用於遷移私網SLB例項掛載的經典網路ECS_3和ECS_4。
  2. 2. 配置VPC內新建的這兩臺ECS,使用RDS和OSS的專有網路訪問域名。
  3. 3. 在VPC內新建一個私網SLB例項,用於代替經典網路的私網SLB例項。
  4. 4. 配置VPC內的私網SLB例項,新增步驟一中新建的兩臺ECS作為後端伺服器。
  5. 5. 在VPC內再新建兩臺ECS,用於遷移公網SLB例項的經典網路ECS_1和ECS_2。
  6. 6. 配置這兩臺新建的ECS。特別注意,此時需要將訪問經典網路中的私網SLB的地址替換為VPC的私網SLB地址。
  7. 7. 接下來的過程就和上面的示例差不多一樣了。

ClassLink方案使用示例

基本步驟

  1. 1. 在VPC控制檯針對需要的VPC啟用ClassicLink功能。
  2. 2. 在ECS控制檯將經典網路ECS Link到VPC。
  3. 3. 安全組授權。

步驟一 VPC開啟ClassicLink功能

  1. 1. 登入VPC管理控制檯
  2. 2. 在左側導航欄,單擊專有網路
  3. 3. 單擊專有網路的ID連結,進入詳情頁面。
  4. 4. 單擊開啟ClassicLink

開啟ClassicLink

    5. 在彈出的對話方塊中,單擊確定開啟該功能。

確認開通

步驟二 將ECS例項連結到VPC

  1. 1. 登入ECS管理控制檯
  2. 2. 在左側導航欄,單擊例項
  3. 3. 找到目標例項,單擊更多 > 連線專有網路
  4. 注意:確保ECS例項的地域和VPC的地域相同。

連線專有網路

    4. 在彈出的對話方塊中,選擇一個專有網路,然後單擊確定

選擇VPC

步驟三 安全組授權

最後,您需要新增相應的安全組規則:

  • 如果經典網路ECS要訪問專有網路的ECS,需要在專有網路的ECS的安全組內新增一條內網入方向允許Classic ECS的地址段訪問的安全組規則。

  • 如果專有網路內的ECS要訪問經典網路的ECS,則同樣需要在經典網路ECS的安全組內新增一條內網入方向允許專有網路ECS的地址段訪問的安全組規則。

下面以經典網路ECS訪問連結的VPC為例,示範如何新增安全組規則。

  1. 1. 登入ECS管理控制檯
  2. 2. 在左側導航欄,單擊例項
  3. 3. 找到需要授權的專有網路ECS例項,單擊例項ID連結進入例項詳情頁面。
  4. 4. 在左側導航欄,單擊本例項安全組
  5. 5. 單擊配置規則,然後新增如下一條安全組規則。

        注意:當前ClassicLink的安全組授權暫時只支援地址段授權,後續會支援安全組授權。

安全組規則

步驟四 驗證測試

在已經Link到VPC的經典網路ECS上通過ping等方式測試私網通訊是否正常。

其他操作

您可以在ECS控制檯檢視經典網路ECS到VPC的連線狀態,也可以取消經典網路ECS到VPC的連結。對於沒有任何連結的VPC,您可以在VPC控制檯關閉ClassicLink功能。

單ECS遷移方案使用示例

基本步驟

  1. 1. 預約遷移
  2. 2. 正式遷移
  3. 3. 檢視遷移結果

步驟一 預約遷移

在預約遷移時,請注意:

  • 當前預約遷移必須通過客戶經理申請。請將需要遷移的例項列表提供給客戶經理,待阿里雲處理後,方可通過控制檯進行預約遷移。

  • 本遷移會重啟ECS並更換ECS的公網和私網IP,請嚴謹評估對系統的影響並做好相應預案。

具體預約步驟如下:

  1. 1. 登入ECS管理控制檯
  2. 2. 在右上方的常用操作區域,單擊待處理事件

待處理事件

  1. 3. 在待處理事件頁面,單擊專有網路遷移頁籤。
  2. 4. 選擇需要遷移的例項,然後單擊預約遷移

遷移

    5. 在彈出的對話方塊中,選擇要遷移到的專有網路、交換機、遷移時間等配置,然後單擊確定

預約遷移配置

    6. 在左側導航欄,單擊全部事件,檢視事件狀態

步驟二 正式遷移

完成預約後,本遷移工具將在預約時間點開始遷移。

步驟四 檢視遷移結果

您可以通過多種方式檢視遷移結果:

  • 在事件中檢視事件狀態。如果事件狀態為執行完成表明已經成功遷移,如下圖所示。

    ecs mig03

  • 檢視是否收到遷移成功的簡訊提醒。

  • 登入到ECS管理控制檯,在例項詳情頁面,檢視例項的“網路型別”是否為“專有網路”。


常見問題

Q:SLB混掛開放了哪些地域?

國內地域都已經完成開放。

Q:ClassicLink方案開放了哪些地域?

目前開放了華北2(北京)、華南1(深圳)、華東2(上海)、華東1(杭州)地域,其它地域陸續開放中。

Q:RDS混訪如何操作?哪些資料庫類產品支援混訪?

參考經典網路遷移VPC-RDS等支援混訪說明

Q:OSS如何獲得VPC訪問域名?

參考OSS經典網路和VPC訪問方式

Q:除了RDS以及OSS支援混訪外,還有哪些產品支援?

RDS資料庫之外的例項型雲產品目前都還不支援混訪。

OSS等非例項型雲產品,且可以通過兩個域名分別提供VPC和經典網路訪問入口的,不需要額外再開發,本身就支援混訪了。

Q:單ECS遷移什麼時候能支援不變公網IP?

由於該功能比較複雜,當前還在研發中,暫時還沒有精確的時間。


相關文章