本文作者上海駐雲 高級架構師 李俊濤
前言
隨着雲計算技術和市場的全面成熟,越來越多的企業客戶開始規划梳理自己的應用系統,如何把這些應用系統平滑遷移到阿里雲等主流的公共雲平台成為決策者們首要思考的問題。總體來講企業系統的上雲,主要包含下面幾個步驟,系統評估,應用遷移,數據遷移,系統測試,數據割接,系統割接等,其中在系統評估階段,網絡規划是不可或缺的。
如何規划阿里雲上的網絡結構,如何申請運營商專線連接自建IDC機房和阿里雲VPC,如何做主備線路的高可用和故障切換。筆者參與實施了永旺商超,餓了么,華大基因等企業客戶上雲過程中的網絡架構設計與實施,結合實際經驗和大家一起分享如何解決這些網絡問題。
阿里雲VPC使用場景
阿里雲VPC(Virtual PrivateCloud)是軟件定義網絡的一種實現,與之相對於的是阿里雲經典網絡,在經典網絡里創建一個ECS實例,該實例的公網IP地址和私網IP地址是系統分配的,不能變更;在VPC里面用戶可以自定義網絡地址段,設定機器的私網IP地址,通過虛擬交換機、虛擬路由器的方式搭建自己的雲端局域網。使用VPC最主要的優勢在於:
1.安全性更高。經典網絡對不同的租戶間的網絡隔離是三層隔離,而VPC網絡對於不同VPC間的網絡是二層隔離,相當於給用戶划分VLAN的方式,因此從內網隔離角度更加徹底和安全。
2.網絡互通更方便。雲上的VPC網絡可以自定義雲端的局域網,方便與用戶線下IDC機房打通,以及雲上不同地域的VPC之間的互通。
公有雲的主要服務商里面,AWS,Asure默認使用VPC,騰訊雲,金山雲等也都支持VPC網絡;所以VPC在企業級客戶上雲過程中會成為默認網絡選擇。典型的使用場景如下圖所示:
圖1 企業VPC使用場景
上圖描述用戶線下IDC機房與阿里雲VPC打通的方式,可以通過租用運營商專線線路,也可以利用公網網絡建立隧道VPN通道。如果是阿里雲不同地域(Region)的VPC之間可以直接使用阿里雲的“高速通道”產品來打通。
運營商專線接入阿里雲
專線的使用場景如下圖所示
圖2 專線使用場景
用戶專線接入主要包含如下幾個步驟:
一、統計當前企業自有網段,確定VPC IP和VPC ID
為了防止在建設VPC混合雲時產生IP地址沖突的情況,需要在建設VPC之前,做好對VPC的網絡地址規划,即充分了解企業當前的已用和計划預留的所有IP地址網段,記錄下來作為“用戶自有機房IP段”並根據預計ECS的數量進行VPC網絡的規划。
二、用戶專線申請
2.1 獲取阿里雲專線接入點信息
用戶選擇一家基礎電信運營商,申請從用戶自有機房到用戶在阿里雲VPC地域的專線。阿里雲專線的接入點位置,通過給阿里雲官網開工單可以獲得,工單中需要標明VPC ID。
2.2 與運營商簽訂專線合同
用戶與選定的運營商簽訂合同,一般30個工作日內會完成專線實施。該過程更加運營商要求不一樣,可能需要IDC機房主體單位和阿里雲主體分別對專線接入申請簽章。
2.3 獲取專線接口IP地址段
用戶的專線完成后,需指定專線兩端接口的IP地址。分別是“專線用戶端接口IP”和“專線阿里端接口IP”。並通過工單系統向阿里雲官網反饋。
三、填寫《專線接入信息表》,分別完成線下和雲上的路由設置
用戶需完成《專線接入信息表》,阿里雲后台工程師會按照表格內容完成用戶自有網段IP地址回指,屆時用戶也需在自有專線交換機上將VPC IP段指向專線阿里端接口IP。
表1 專線接入信息表
經過上述的專線接入流程,用戶的IDC機房和阿里雲VPC節點之間就通過專線連接起來了。從圖2的專線示意圖我們可以看到,為了保證專線線路的高可用,建議客戶接入兩條專線分別作為主線路和備用線路,當出現故障可以及時切換到備用線路,不影響系統可用性。但是,同時申請兩條專用線路會大幅增加實施成本。所以在合適的場景里面,可以選擇備用線路不使用專線,而是用建立Site to Site隧道VPN方式。
有了這種隧道VPN實現方式,現在已經專線接入阿里雲VPC,並且只有一條裸光纖的客戶,可以在現有基礎上,增加一條隧道VPN,實現線路的高可用。下面開始介紹阿里雲隧道VPN的使用步驟。
使用FlexGW搭建隧道VPN
隧道VPN在網絡架構中被廣泛使用,兩端通過公網線路創建了一條加密隧道,所有的數據交換通過隧道完成。市場上主要的路由器和防火牆設備都支持隧道VPN,例如Cisco,Juniper,H3C, 山石網科,交大捷普等。相比專線接入,隧道VPN在可擴展性,投入成本,實施周期上都有很明顯的優勢,而在線路穩定性和安全性上,運營商專線會更加突出。
阿里雲VPC目前不支持把路由器或者防火牆等物理設備遷移至阿里雲機房,在阿里雲端做隧道VPN可以使用官方推薦的FlexGW工具。該工具支持Site to Site VPN,撥號VPN,TCP端口映射等功能。用戶在Vswitch環境下使用FlexGW鏡像開通一台ECS服務器作為阿里雲端的網絡設備和線下建立隧道VPN。
圖4 FlexGW使用場景
上圖展示了FlexGW在阿里雲VPC里面工作的場景,VPC2是一個“192.168.0.0/24”網段的Vswitch,在這個Vswitch下面有3台ECS服務器,其中“192.168.0.1”作為網關服務器,部署了FlexGW工具。“192.168.0.2”和“192.168.0.3”這兩台服務器部署用戶的應用系統。在VPC控制台申請一台彈性EIP並綁定到“192.168.0.1”這台服務器,在瀏覽器中輸入“https://EIP”的URL地址就可以通過Web界面來設置VPN隧道的相關配置信息。
和專線接入流程類似,隧道VPN的搭建主要包含如下幾個步驟:
一、收集兩端網絡地址段信息
與專線接入一樣,在建立隧道VPN之前需要統計線下和阿里雲端的網段地址信息,隧道IKE,ESP的協議,加密密鑰等,如下表所示:
表2 隧道信息收集表
二、通過FlexGW界面配置隧道信息
依據收集到的隧道信息,通過FlexGW的Web控制台操作做隧道雲端的配置,如下圖所示
圖5 隧道配置
隧道配置完成后,分別開啟兩端的隧道vpn服務,確認隧道狀態,兩端網絡即可相互打通。
三、分別設置兩端路由信息
隧道建立起來后,兩端子網里面的機器相互訪問還需要做路由設置。以阿里雲VPC為例,需要在VPC管理控制台設置路由的下一跳,添加路由規則,把“172.16.0.0/12”網段的下一跳指向“FlexGW的ECS實例ID”即可。同時添加相應的SNAT和DNAT的映射關系。線下和雲端的網絡完成打通,兩端機器可以相互訪問。
這里補充說明一下,阿里雲VPC目前已經支持HAVIP,利用HAVIP可以做FlexGW隧道本身的高可用。在VPC環境中准備兩台FlexGW鏡像的ECS,設置路由下一跳的時候,不是具體一台ECS的實例ID,而是HAVIP的地址。這樣利用HAVIP功能和兩台ECS之間的Keepalive機制保障,就可以在一台ECS掛掉的情況下,隧道直接切換到另外一台ECS上,並不影響隧道本身的使用。
目前為止,專線和隧道VPN兩種網絡接入方式都已經完成。如何在兩條通路上做線路的高可用,接下來詳細展開。
主備線路切換與故障演練
主備線路的切換過程,我們以客戶實例為例來闡述。由於專線申請流程和周期比較長(30個工作日左右),客戶用隧道VPN在生產系統中使用了一段時間。在運營商通知專線實施完成后,需要把主線路切換到專線線路上,同時模擬了線路故障導致的主備線路切換。總體來說完成下面三件事情:
1.專線主線路的生效
運營商專線接入到阿里雲物理機房后,會通知用戶接入完成。客戶需要通過工單聯系阿里雲工程師,按照表1專線接入表的信息發布路由,並約定調試時間。添加路由后,可以在VPC控制台查看到路由信息如下:
圖6 VPC路由信息詳情
該用戶實例中,“10.172.0.0/25”是線下網段地址,“10.200.0.0/24”是阿里雲端的網段地址。從圖中可以看到,在VPC里面添加路由規則,線下網段“10.172.0.0/25“的下一跳到了一個VCON開頭的設備地址,兩端路由設置成功后,專線線路正常工作。
從IDC網段的一台機器上可以PING通阿里雲VPC里面一台ECS服務器,跟蹤路由驗證在到雲端的第一跳地址是“10.172.0.130”,該地址正是專線接入申請表1中分配給雲端的接入口地址。
圖7 主線路路由跟蹤情況
1.模擬專線故障,切回隧道VPN備用線路
在驗證完專線主線路正常工作后,通過物理上拔下接口的方式模擬主線路的故障,發現原來的PING通路正常工作,並通過路由跟蹤發現到雲端后的下一掉地址變成了“10.200.0.1”,該地址是用作隧道VPN的ECS內網地址。得出結論主線路正常切換到了備用隧道VPN線路。
圖8 備用線路路由跟蹤情況
1.模擬隧道故障,切回專線主線路
確認主線路正常切換到備用線路后,最后一步驗證備用線路故障,是否可以順利切回到主線路。模擬方式是強制停掉阿里雲ECS上的VPN服務。驗證PING通路正常工作,並且通過路由跟蹤雲端ECS訪問線下IDC機器的路由發現,下一跳的地址是“10.172.0.129”,該地址是表1中分配給線下IDC接口的地址。
圖9 切換回主線路后路由跟蹤情況
經過上面三個步驟的演練,確認了主備線路的無縫切換達到預期,專線主線路和隧道VPN的高可用網絡設計方案的可行性得到驗證。
小結
通過實際客戶案例,本文闡述了專線和隧道VPN相互做主備線路的主要思路與步驟。為大量有混合雲使用需求的客戶提供了技術上的保障。混合雲的使用也會成為未來企業級客戶上雲過程中的必經階段。
同時,結合對線路的高可用性要求和成本的綜合考慮,企業級客戶在實際網絡結構設計中有很多選項,例如同時接入兩根裸光纖為主備線路,裸光纖和MPLS專線為主備線路,也可以選擇利用HAVIP和Keepalive機制保證隧道本身的高可用來達到目的。選擇最合適的方式來滿足企業的上雲需求,保證網絡線路的高可用,讓客戶的系統安全高效平穩的遷移到雲端,我們為您提供最強的技術保障。