本文提供參考架構,協助您部署跨雲端網路中樞輻射網路拓撲,並使用網路虛擬設備 (NVA) 傳遞流量。
本文適用對象為建構網路連線的網路管理員,以及規劃工作負載部署方式的雲端架構師。本文假設您對路由、網際網路連線和要部署的 NVA 軟體有基本瞭解。如要使用這項參考架構,您應熟悉 Cross-Cloud Network 設計指南。
這項設計支援與地端部署或雲端服務供應商 (CSP) 位置建立多個外部連線,以及多個工作負載虛擬私有雲網路。
這項設計假設為單一區域部署。這項功能提供區域親和性,但不提供區域容錯移轉。如要部署至多個區域,可以使用Google Cloud 多區域部署原型。
這項設計會將 NVA 放在所有流程中,但工作負載 VPC 網路內和之間的流程除外。您可以新增適當的略過策略路由,讓流程略過 NVA。外部網路與服務存取虛擬私有雲網路之間的流量需要 NVA,因為其他所有流量都可以由 Cloud Next Generation Firewall 檢查。
架構
下圖顯示網路架構的概略視圖,以及此架構支援的流程。
此架構包含下列高階元素:
| 元件 | 目的 | 互動 |
|---|---|---|
| 外部網路 (內部部署或其他 CSP 網路) | 主機是工作負載的用戶端,這些工作負載會在工作負載虛擬私有雲和服務存取虛擬私有雲中執行。外部網路也可以代管服務。 | 透過轉送虛擬私有雲網路中代管的 NVA,與 Google Cloud的虛擬私有雲網路交換資料。使用 Cloud Interconnect 或高可用性 VPN 連線至轉送 VPC 網路。 終止下列其中一個流程:
|
| 轉送虛擬私有雲網路 (也稱為傳輸虛擬私有雲網路) | 做為外部網路、服務存取虛擬私有雲網路和工作負載虛擬私有雲網路的中心。主機 NVA,用於處理網路間的流量。 | 透過 Cloud Interconnect、高可用性 VPN 和虛擬私有雲網路對等互連的組合,將外部網路、服務存取虛擬私有雲網路和工作負載虛擬私有雲網路連結在一起。當外部、服務存取和工作負載網路的流量通過路由網路時,策略路徑會將流量傳送至 NVA。 |
| 可存取服務的虛擬私有雲網路 | 提供其他網路中代管服務的存取點。如有需要,服務存取網路也可以直接代管服務。 | 透過路由網路與外部和工作負載網路交換資料。使用高可用性 VPN 連線至轉送虛擬私有雲。高可用性 VPN 提供的遞移路由功能,可讓外部流量透過服務存取虛擬私有雲網路,連上代管服務虛擬私有雲。 如果服務存取權虛擬私有雲網路直接代管服務,則會終止來自所有其他網路的其中一端流程。 |
| 代管服務虛擬私有雲網路 | 代管其他網路中用戶端所需的服務。 | 與外部、服務存取和工作負載網路交換資料。使用 Private Service Connect,或透過使用虛擬私有雲網路對等互連的私人服務存取權,連線至服務存取虛擬私有雲網路。 終止所有其他網路的流程一端。 |
| 工作負載虛擬私有雲網路 | 主機是其他網路中用戶端所需的工作負載。 | 透過路由 VPC 網路與外部和服務存取 VPC 網路交換資料。使用 VPC 網路對等互連連線至轉送網路。使用 NCC 連線至其他工作負載虛擬私有雲網路。 終止下列其中一個流程:
|
| 可存取網際網路的虛擬私有雲網路 | 為需要網際網路的工作負載提供存取權。 | 為需要從網際網路下載更新或其他資料的工作負載提供網際網路連出存取權。資料會通過 NVA,然後透過 Cloud NAT 傳輸出去。 終止下列其中一個流程:
|
連線說明
下圖詳細說明架構,並標示網路之間的四個連線:
本節說明上圖所示的四種連線。
連線 1:外部網路與路由虛擬私有雲網路之間
外部網路與路由 VPC 網路之間的連線,是透過 Cloud Interconnect 或高可用性 VPN 建立。轉送 VPC 網路中的 Cloud Router 和外部網路中的外部路由器會使用 BGP 交換路徑。
- 外部網路中的路由器會向路由 VPC Cloud Router 公告外部子網路的路徑。您可以使用 BGP 指標和屬性表示路徑偏好設定。
- 路由 VPC 網路中的 Cloud Router 會將 Google Cloud的 VPC 中的前置字元路徑通告至外部網路。這些路徑必須使用 Cloud Router 自訂路徑通告進行通告。
連線 2:在路由虛擬私有雲網路與服務存取虛擬私有雲網路之間
路由 VPC 網路與服務存取 VPC 網路之間的連線會透過高可用性 VPN 建立。路由 VPC 網路和服務存取 VPC 網路中的區域 Cloud Router 會使用 BGP 交換路徑。
- 轉送 VPC 高可用性 VPN Cloud Router 會將外部網路前置字元、工作負載 VPC 和其他服務存取 VPC 的路由,通告至服務存取 VPC Cloud Router。這些路徑必須使用 Cloud Router 自訂路徑通告來通告。
- 服務存取權虛擬私有雲網路會將其子網路和任何已連結代管服務虛擬私有雲網路的子網路,公告給路由虛擬私有雲網路。管理服務 VPC 路徑必須使用 Cloud Router 自訂路徑通告來通告。
連線 3:在路由虛擬私有雲網路和工作負載虛擬私有雲網路之間
路由虛擬私有雲網路與工作負載虛擬私有雲網路之間的連線,是透過虛擬私有雲網路對等互連實作。透過這項連線,工作負載虛擬私有雲網路和連線至路由虛擬私有雲網路的其他網路,就能彼此通訊。這些其他網路包括外部網路和服務存取虛擬私有雲網路。
- 工作負載虛擬私有雲網路會自動將子網路匯出至路由虛擬私有雲網路。
連線 4:工作負載虛擬私有雲網路之間
工作負載虛擬私有雲網路會使用相同中樞的 NCC 虛擬私有雲輪輻連線。因此,流量會從一個工作負載虛擬私有雲網路直接傳輸到另一個網路。流量不會經過轉送虛擬私有雲網路。
流量
下圖顯示這個參考架構啟用的四個流程。
下表說明圖表中的流程:
| 來源 | 目的地 | 說明 |
|---|---|---|
| 外部網路 | 可存取服務的虛擬私有雲網路 |
|
| 可存取服務的虛擬私有雲網路 | 外部網路 |
|
| 外部網路 | 工作負載虛擬私有雲網路 |
|
| 工作負載虛擬私有雲網路 | 外部網路 |
|
| 工作負載虛擬私有雲網路 | 可存取服務的虛擬私有雲網路 |
|
| 可存取服務的虛擬私有雲網路 | 工作負載虛擬私有雲網路 |
|
| 工作負載虛擬私有雲網路 | 工作負載虛擬私有雲網路 | 離開一個工作負載虛擬私有雲網路的流量,會透過 NCC 遵循更具體的路徑前往另一個工作負載虛擬私有雲網路。回程流量會反向傳輸。這類流量不會通過 NVA。 |
使用的產品
這項參考架構使用下列 Google Cloud 產品:
- 虛擬私有雲 (VPC):虛擬系統,可為 Google Cloud 工作負載提供全球性、可擴充的網路功能。虛擬私有雲包括虛擬私有雲網路對等互連、私人服務連線、私人服務存取權和共用虛擬私有雲。
- Network Connectivity Center:一種協調架構,可簡化輪輻資源之間的網路連線,這些資源會連線至稱為「中樞」的中央管理資源。
- Cloud Interconnect:這項服務可透過高可用性且低延遲的連線,將外部網路延伸至 Google 網路。
- Cloud VPN:這項服務可透過 IPsec VPN 通道,將對等網路安全地延伸至 Google 的網路。
- Cloud Router:分散式全代管服務,提供邊界閘道通訊協定 (BGP) 發言者和回應者功能。Cloud Router 可搭配 Cloud Interconnect、Cloud VPN 和路由器設備,根據 BGP 接收和自訂學習的路徑,在虛擬私有雲網路中建立動態路徑。
- Compute Engine:安全可靠且可自訂的運算服務,可讓您透過 Google 的基礎架構建立及執行 VM。
- Cloud Load Balancing:一系列高效能、可擴充的全球和區域負載平衡器。
- Cloud Next Generation Firewall:提供進階防護功能的完全分散式防火牆服務,具備微區隔和簡化管理功能,可協助保護 Google Cloud 工作負載免受內外部攻擊。
設計注意事項
本節說明設計因素、最佳做法和設計建議,供您參考這些資訊,使用這個參考架構開發拓撲,滿足安全性、可靠性和效能方面的特定需求。
安全性與法規遵循
以下列出這個參考架構的安全性和法規遵循注意事項:
- 基於法規遵循考量,您可能只想在單一區域中部署 Cloud Interconnect。如要將所有流量保留在單一區域,可以使用 99.9% 拓撲。詳情請參閱「為專屬互連網路建立 99.9% 的可用性」和「為合作夥伴互連網路建立 99.9% 的可用性」。
- 使用 Cloud Next Generation Firewall 保護工作負載虛擬私有雲網路之間的流量。
- 如需第 7 層流量檢查,請啟用入侵偵測與防護服務 (可選用支援 TLS 檢查),封鎖惡意活動並防範工作負載遭受威脅。這項服務可協助支援防範安全漏洞、間諜軟體和病毒。這項服務會建立 Google 管理的區域防火牆端點,並使用封包攔截技術透明檢查工作負載,無須重新設計任何路徑架構。Cloud Next Generation Firewall Enterprise 會產生區域防火牆端點和資料處理費用。
- 啟用防火牆政策規則的 Google Threat Intelligence,根據 Google Threat Intelligence 資料允許或封鎖連線。
- 使用防火牆政策規則的地理位置物件,只允許來自允許國家/地區的流量,並封鎖禁運國家/地區。
- 視流量和法規遵循需求啟用記錄和監控功能。您可以使用 VPC 流量記錄,深入瞭解流量模式。
- 使用 Cloud IDS 收集流量的額外深入分析資訊。
- 如果 NVA 必須連線至網際網路位置才能下載更新,請在網際網路存取 VPC 網路中設定 Cloud NAT。
- 如要讓外部網路中的用戶端直接連上 Google API,請在轉送虛擬私有雲網路中建立策略路徑,步驟如下:
- 來源範圍:外部網路的匯總範圍。
- 目的地範圍:
199.36.153.4/30 - Next hop (下一個躍點):
default-internet-gateway
如要讓 VM 透過私人連線存取 Google API,請按照下列步驟操作: Google Cloud
- 在每個 VPC 網路中啟用 Private Google Access。
- 在每個工作負載網路中,建立策略路由來存取 Google API:
- 來源範圍:工作負載虛擬私有雲子網路的位址範圍。
- 目的地範圍:
199.36.153.4/30 - Next hop (下一個躍點):
default-internet-gateway
- 為私人 Google 存取權建立 DNS 回應政策,並套用至轉送虛擬私有雲網路和所有工作負載虛擬私有雲網路。
在 DNS 回應政策中,建立如下規則:
- DNS 名稱:
*.googleapis.com. 本機資料:
name="*.googleapis.com.",type="A",ttl=3600,rrdatas="199.36.153.4|199.36.153.5|199.36.153.6|199.36.153.7"
- DNS 名稱:
可靠性
以下清單說明此參考架構的可靠性考量事項:
- 如要取得 Cloud Interconnect 99.99% 的可用性,即使只有一個區域有 VM,也必須連線至兩個不同的 Google Cloud 區域。
- 如要提高可靠性並盡量避免區域性故障,可以使用Google Cloud 多區域部署原型,在多個區域複製部署作業。
- 如要處理服務存取 VPC 與其他網路之間的預期流量,請建立足夠數量的 VPN 通道。個別 VPN 通道有頻寬限制。如果您在外部網路和路由虛擬私有雲網路之間使用高可用性 VPN,也適用相同的指引。
效能最佳化
以下列出這個參考架構的效能考量事項:
- 您可以增加網路和連線的最大傳輸單元 (MTU),或許就能提升網路效能。詳情請參閱「傳輸單位上限」。
- 路由虛擬私有雲與工作負載資源之間的通訊是透過虛擬私有雲網路對等互連進行,可為網路中的所有 VM 提供全線速率處理量,且不需額外付費。規劃部署作業時,請考量虛擬私有雲網路對等互連配額和限制。
- 您可以使用 HA VPN 或 Cloud Interconnect,將外部網路連線至路由 VPC 網路。如要進一步瞭解如何兼顧成本和效能考量,請參閱「選擇網路連線產品」。
部署
本文中的架構會建立三組連線至中央路由 VPC 網路,以及工作負載 VPC 網路之間的連線。所有連線都完成設定後,部署中的所有網路就能與其他網路通訊。
這項部署作業假設您要在一個區域中,建立外部網路與路由虛擬私有雲網路之間的連線。不過,工作負載子網路可位於任何區域。如果您只在一個區域中放置工作負載,則只需要在該區域中建立子網路。
如要部署這項參考架構,請完成下列工作:
- 找出要放置連線和工作負載的區域
- 建立虛擬私有雲網路和子網路
- 建立資源標記來控管防火牆規則
- 建立及關聯網路防火牆政策
- 建立外部網路與轉送虛擬私有雲網路之間的連線
- 在路由虛擬私有雲網路與服務存取虛擬私有雲網路之間建立連線
- 在路由虛擬私有雲網路和工作負載虛擬私有雲網路之間建立連線
- 連結工作負載虛擬私有雲網路
- 安裝 NVA
- 建立服務路徑
- 在網際網路存取網路中設定網際網路存取權
- 測試與工作負載的連線
找出要放置連線和工作負載的區域
一般來說,您會希望連線、虛擬私有雲子網路和工作負載盡量靠近地端部署網路或其他雲端用戶端。 Google Cloud 如要進一步瞭解如何放置工作負載,請參閱Google Cloud 區域選擇器和選擇 Compute Engine 地區的最佳做法。
建立虛擬私有雲網路和子網路
如要建立虛擬私有雲網路和子網路,請完成下列工作:
- 建立或找出要建立虛擬私有雲網路的專案。您需要一個路由專案,用來處理對外的連線,以及另一個專案,用來代管服務存取和工作負載虛擬私有雲網路。如需相關指引,請參閱「網路區隔和專案結構」。如要使用共用 VPC 網路,請將專案佈建為共用 VPC 主專案。
- 規劃網路的 IP 位址分配作業。您可以「建立內部範圍」,預先分配及保留範圍。分配可匯總的位址區塊,可簡化後續設定和作業。
- 在路由專案中建立路由 VPC 網路和子網路。 如果您認為自己會有多個區域,請啟用全域轉送。
- 在路由專案中建立網際網路存取虛擬私有雲網路和子網路。
- 在主專案中建立服務存取虛擬私有雲網路和子網路。如果您認為自己會有多個區域,請啟用全域轉送。
- 在主專案中建立工作負載虛擬私有雲網路和子網路。如果您認為自己會有多個區域,請啟用全域轉送。
建立資源標記,控管 Cloud Next Generation Firewall 規則
建立下列標記。您可以視需要命名這些欄位,所列名稱僅供參考。
- 轉送虛擬私有雲網路:
- 金鑰:
routing-vpc-tags - 價值:
routing-vpc-multinic - 目的:
GCE_FIREWALL - Purpose-data:轉送虛擬私有雲網路的名稱。
- 金鑰:
針對每個工作負載虛擬私有雲網路:
金鑰:
WORKLOAD_NAME-tags將
WORKLOAD_NAME替換為工作負載虛擬私有雲網路的名稱。值:
WORKLOAD_NAME-clients、WORKLOAD_NAME-www將
WORKLOAD_NAME替換為工作負載虛擬私有雲網路的名稱。目的:
GCE_FIREWALLPurpose-data:工作負載虛擬私有雲網路的名稱。
網際網路存取網路:
- 金鑰:
internet-tag - 價值:
internet-vpc - 目的:
GCE_FIREWALL - Purpose-data:網際網路存取網路的名稱。
- 金鑰:
建立及關聯網路防火牆政策
本節說明如何建立及關聯 Cloud NGFW 規則,以供部署作業使用。
- 在路由專案中建立全域網路防火牆政策。
- 在政策中建立下列防火牆規則:
- 規則:允許來自健康狀態檢查 IP 範圍的輸入流量,適用於使用的通訊埠,例如
tcp:80,443。 - 允許 Identity-Aware Proxy 流量的規則。
- 規則:允許來自內部範圍的傳入流量,例如服務存取、工作負載和外部網路。
- 規則:允許來自健康狀態檢查 IP 範圍的輸入流量,適用於使用的通訊埠,例如
- 將政策與轉送虛擬私有雲網路建立關聯。
- 根據工作負載和服務存取虛擬私有雲中的工作負載,在工作負載代管專案中建立防火牆政策和規則,控管該流量。
在外部網路與路由虛擬私有雲網路之間建立連線
本節假設連線位於單一區域。
- 設定外部網路與路由網路之間的連線。如要瞭解如何思考這個問題,請參閱「外部和混合連線」。如需選擇連線產品的指引,請參閱「選擇網路連線產品」。
- 請按照下列步驟設定 BGP:
- 請在指定外部位置設定路由器,方法如下:
- 在兩個介面上使用相同的 BGP MED (例如 100),通告該外部位置的所有子網路。如果兩個介面都公告相同的 MED,則 Google Cloud 可以使用 ECMP,在兩個連線之間平衡流量負載。
- 在已連線區域的路由 VPC 中,設定對外的 Cloud Router,如下所示:
- 使用自訂路徑通告,透過兩個對外的 Cloud Router 介面,公告所有地區的所有子網路範圍。盡可能匯總這些資料。在兩個介面上使用相同的 MED,例如 100。
- 請在指定外部位置設定路由器,方法如下:
在路由虛擬私有雲網路與服務存取虛擬私有雲網路之間建立連線
服務存取 VPC 會使用高可用性 VPN 連線至轉送 VPC。VPN 可在服務存取虛擬私有雲、外部網路和工作負載網路之間進行遞移轉送。
- 預估路由和服務存取虛擬私有雲之間需要傳輸多少流量。請據此調整預期的通道數量。
- 按照「建立高可用性 VPN 閘道來連結虛擬私有雲網路」一文中的操作說明,在路由虛擬私有雲和服務存取虛擬私有雲之間設定高可用性 VPN。在路由網路中建立專屬的高可用性 VPN Cloud Router。保留面向外部網路的路由器,供外部網路連線使用。
- 如果使用私人服務存取權,將代管服務虛擬私有雲連線至服務存取虛擬私有雲,建立虛擬私有雲網路對等互連連線後,請更新服務存取虛擬私有雲端的虛擬私有雲網路對等互連連線,匯出自訂路徑。
在路由虛擬私有雲網路和工作負載虛擬私有雲網路之間建立連線
在路由虛擬私有雲和每個工作負載虛擬私有雲之間建立虛擬私有雲網路對等互連連線:
- 為每條連線的路由虛擬私有雲端啟用「匯出自訂路徑」。
- 為每個連線的工作負載虛擬私有雲端啟用「匯入自訂路徑」。
- 在預設情境中,只有工作負載 VPC 子網路路徑會匯出至路由 VPC。您不需要從工作負載 VPC 匯出自訂路徑。
連結工作負載虛擬私有雲網路
使用 NCC VPC 輪輻將工作負載 VPC 網路互相連線。讓所有輪輻都屬於同一個 NCC 輪輻對等互連群組。使用核心對等互連群組,允許虛擬私有雲之間進行全網狀通訊。
使用 Cloud Next Generation Firewall 管理工作負載虛擬私有雲網路內和之間的流量。
NCC 連線會在工作負載虛擬私有雲網路之間宣告特定路徑。這些網路之間的流量會遵循這些路徑。
安裝 NVA
這些操作說明假設您有要用於 NVA 的 VM 映像檔。
建立已平衡負載的 NVA 群組。詳情請參閱「設定第三方設備適用的內部直通式網路負載平衡器」。
根據 NVA 映像檔建立執行個體範本,並使用下列參數:
網路標記:
nva-REGION將
REGION替換為區域名稱。Resource Manager 代碼:
routing-vpc-tags=routing-vpc-multinic。沒有外部 IP 位址的路由虛擬私有雲網路網路介面。
網際網路存取 VPC 網路的網路介面,沒有外部 IP 位址。
為 VM 和作業系統設定
can IP forward。建立
ip route路徑iptables和規則,在路由和網際網路存取網路之間傳送流量。
建立地區代管執行個體群組 (MIG),並納入足夠的 VM 來處理預期流量。
建立服務路徑
本節說明如何透過 NVA 傳送流量,或視需要略過 NVA。
- 在轉送虛擬私有雲網路中,使用下列參數建立以政策為準的路徑:
- 來源範圍:
0.0.0.0/0 - 目的地範圍:
0.0.0.0/0 - 下一個躍點:內部直通式網路負載平衡器轉送規則的 IP 位址
- 網路標記:請勿指定任何網路標記。 這些參數會建立規則,套用至來自 VLAN 連結、VPN 通道或網路中其他 VM 的所有流量。
- 來源範圍:
在路由網路中,使用下列參數建立略過策略路由:
- 來源範圍:
0.0.0.0/0 - 目的地範圍:
0.0.0.0/0 - 下一個躍點:設定下一個躍點,略過其他策略路徑並使用預設路徑。
「Network tags」(網路標記):
nva-REGION將
REGION替換為區域名稱。
這些參數會建立規則,僅適用於離開 NVA VM 的流量。這會導致這類流量略過您建立的第一個策略路徑,改為遵循 VPC 路由表。
- 來源範圍:
在每個工作負載網路中,為每個子網路建立以政策為依據的路徑,並採用下列設定:
- 來源範圍:工作負載虛擬私有雲子網路的位址範圍。
- 目的地範圍:
0.0.0.0/0 - 下一個躍點:路由網路中內部直通式網路負載平衡器轉送規則的 IP 位址
在每個工作負載網路中,為子網路內流量建立略過策略路徑:
- 來源範圍:工作負載虛擬私有雲子網路的位址範圍。
- 目的地範圍:工作負載虛擬私有雲子網路的位址範圍。
- 下一個躍點:設定下一個躍點,略過其他策略路徑並使用預設路徑。
在每個工作負載網路中,為子網路間的流量建立略過策略路由。除非路徑可以匯總,否則必須為每個其他工作負載子網路建立路徑:
- 來源範圍:工作負載虛擬私有雲子網路的位址範圍。
- 目的地範圍:其他工作負載子網路的範圍。
- 下一個躍點:設定下一個躍點,略過其他策略路徑並使用預設路徑。
這些操作說明假設除了虛擬私有雲子網路內和工作負載虛擬私有雲子網路之間的流量外,所有流量都會透過 NVA 轉送。如要讓工作負載虛擬私有雲和服務存取虛擬私有雲之間的流量略過 NVA,請安裝額外的政策型轉送略過路徑,並為這類流量設定額外的 Cloud NGFW 規則。
在網際網路存取網路中設定網際網路存取權
如要設定網際網路的傳出存取權,請在網際網路存取網路中設定 Cloud NAT。
測試與工作負載的連線
如果您已在虛擬私有雲網路中部署工作負載,請立即測試存取權。如果您在部署工作負載前已連結網路,現在可以部署並測試。
後續步驟
- 進一步瞭解本設計指南中使用的 Google Cloud 產品:
- 如要查看更多參考架構、圖表和最佳做法,請瀏覽 Cloud Architecture Center。
貢獻者
作者:
- Osvaldo Costa | 網路專家客戶工程師
- Deepak Michael | 網路專員客戶工程師
- Victor Moreno | 雲端網路產品經理
- Mark Schlagenhauf | 網路技術文件撰稿者
其他貢獻者:Ammett Williams | 開發人員關係工程師