Skip to content

gcp

用 Terraform, Google Cloud VPN 架設 Hybird Cloud

  • Ops
tags: gcp, cloud-vpn, shared-vpc, terraform

為了更了解地端、雲端網路如何連接,用了 GCP 來做一整套簡單的實驗。

架構說明

img

雲端

為了模擬比較複雜的組織架構,雲端使用了 Shared VPC 的架構,有以下幾個優點:

  • 減少 VPC 數量,較容易管理
  • 多個子專案(service project)可以共享同一個主專案(host project)定義的網路
  • 子專案可以各自分開 billing
  • 劃分網路權限,子專案只能使用主專案定義的網路

要使用 Shared VPC 架構有幾個前提:

  • 須要有 GCP Organization
  • 主專案須設定為 shared VPC host
  • 子專案須 attach 到主專案

雲端的 VPC Gateway 的實作方式採用 GCP 的 Classic VPN,也稱為 route-based VPN,採用事先定義好的靜態路由規則(static routes) 來做 routing。

GCP 還有另一套 VPN 叫 HA VPN,背後是使用 BGP 來做動態路由設定,由於架構較複雜,沒在此實驗採用。

要使用 GCP 的 Classic VPN 有以下前提:

  • 兩端只能走 IPsec 協議
  • 兩端都必須有 public IPv4 位址

在兩端 peering 上也要避免 IP 位址重疊。另外,若要做到高可用,可以建立多個 VPN gateway 來達成。

地端

為了模擬地端環境,另開一個 GCP 專案,也會設定一個獨立的 VPC。

地端採用一台 VM 實例來扮演 VPC Gateway,使用的工具是 strongSwan

Read More »用 Terraform, Google Cloud VPN 架設 Hybird Cloud