使用 VPN 輪輻連結兩個網站

本教學課程說明如何使用 Network Connectivity Center 中樞和 Cloud VPN 輪輻,在兩個分公司之間設定資料移轉

如要進一步瞭解如何建立中樞和輪輻,請參閱「使用中樞和輪輻」。

事前準備

開始之前,請先詳閱下列各節。

建立或選取專案

為方便設定 Network Connectivity Center,請先找出有效的專案。

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Install the Google Cloud CLI.

  5. If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

  6. To initialize the gcloud CLI, run the following command:

    gcloud init
  7. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  8. Make sure that billing is enabled for your Google Cloud project.

  9. Install the Google Cloud CLI.

  10. If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

  11. To initialize the gcloud CLI, run the following command:

    gcloud init
  12. 如果您使用 Google Cloud CLI,請使用 gcloud config set 指令設定專案 ID。

    gcloud config set project PROJECT_ID

    PROJECT_ID 替換為專屬專案 ID。

    這個頁面的 gcloud CLI 指令假設您已設定專案 ID。

  13. 如要確認專案 ID 設定正確無誤,請使用 gcloud config list 指令

    gcloud config list --format='text(core.project)'
  14. 資源識別慣例

    使用 gcloud CLI 或 API 參照資源時,請採用下表所述的慣例。

    集會/座談 僅支援 附註 範例
    完整 URI 所有資源 請使用下列任一方法參照路由器設備執行個體。
    "https://www.googleapis.com/compute/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME"
    
          
    相對資源名稱 所有資源
    "projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME"
    
        
    名稱 區域和全域資源 這個方法適用於中樞、輪輻、VPN 通道和 VLAN 連結。
     "HUB_NAME"
    
        

    範例拓撲

    下圖說明本教學課程中使用的範例資源。

    Network Connectivity Center 教學課程的拓撲。
    Network Connectivity Center 教學課程的拓撲 (按一下可放大)


    設定資料移轉連線

    如要設定資料轉移連線,請按照下列步驟操作:

    1. 建立 Google Cloud 資源,例如虛擬私有雲 (VPC) 網路、高可用性 VPN 閘道和通道,以及 Cloud Router。
    2. 建立中樞
    3. 第一個第二個分公司定義 Spoke。每個輪輻都應使用 VPN 通道做為基礎資源。
    4. 驗證設定

    建立 Google Cloud 資源

    本教學課程假設您已建立下列Google Cloud 資源:

    • 虛擬私有雲網路的動態轉送模式設為 global
    • 在最靠近 Office1 的區域中,有一個子網路、高可用性 VPN 閘道、Cloud Router,以及將閘道介面連線至 Office1 的通道
    • 在最靠近 Office2 的區域中,有一個子網路、高可用性 VPN 閘道、Cloud Router,以及將閘道介面連線至 Office2 的通道

    如需建立這些資源,請參閱下列文件:

    找出現有 Google Cloud 資源或建立新資源後,請繼續下一節。

    建立中樞

    首先,您要建立中樞。稍後,您會將輪輻附加至這個中樞。

    主控台

    1. 在 Google Cloud 控制台中,前往「Network Connectivity Center」頁面。

      前往 Network Connectivity Center

    2. 在專案下拉式選單中選取專案,在範例圖表中,專案為 my-project

    3. 輸入「中樞名稱」,在本例中為 my-hub

    4. 輸入說明 (選填)

    5. 確認專案 ID。如果專案 ID 不正確,請使用畫面頂端的下拉式選單選取其他專案。

    6. 按一下「繼續」

    7. 如要將 Office1 輪輻新增至中樞,請繼續為 Office 1 建立輪輻

    gcloud

    如要建立中樞,請使用 gcloud network-connectivity hubs create 指令

      gcloud network-connectivity hubs create HUB_NAME \
         --description="DESCRIPTION" \
         --labels="KEY"="VALUE"
    

    替換下列值:

    • HUB_NAME:新中樞的名稱,在本例中為 my-hub
    • DESCRIPTION:描述中心的選填文字
    • KEY:選用標籤文字的鍵/值組合中的鍵
    • VALUE:選用標籤文字的鍵/值組合中的值

    如要將 Office1 輪輻新增至中樞,請繼續為 Office 1 建立輪輻

    API

    如要建立中樞,請使用 networkconnectivity.hubs.create 方法

      POST https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/hubs
      {
        "name":"HUB_NAME",
        "description":"DESCRIPTION",
        "labels": {
          "KEY": "VALUE"
        }
      }
    

    替換下列值:

    • PROJECT_ID:包含新中樞的專案 ID,例如 my-project
    • HUB_NAME:新中樞的名稱,例如 my-hub
    • DESCRIPTION:描述中心的選填文字
    • KEY:選用標籤文字的鍵/值組合中的鍵
    • VALUE:選用標籤文字的鍵/值組合中的值

    如要將 Office1 輪輻新增至中樞,請繼續為 Office 1 建立輪輻

    為 Office 1 建立輪輻

    Office1 建立輪輻。使用兩個高可用性 VPN 通道做為輪輻的基礎資源。每個通道都應源自於最靠近辦公室的區域中的高可用性 VPN 閘道。在範例圖中,這些通道分別以 vpn-tunnel1-office1vpn-tunnel2-office1 表示。

    主控台

    下列步驟接續建立中樞。這些範例說明如何在指定中樞名稱和說明後,立即建立輻射網路。

    1. 在「新增輪輻」表單中,將「輪輻類型」欄位設為「VPN 通道」
    2. 輸入「Spoke name」(Spoke 名稱),在本例中為 office-1-spoke
    3. 視需要輸入 Spoke 的「Description」(說明)
    4. 選取 Spoke 的「Region」(區域),在範例圖表中,Spoke 位於 us-west1
    5. 在「站對站資料移轉」下方,選取「開啟」
    6. 選取適當的 VPC 網路;在範例圖表中,輪輻位於 network-a
    7. 選取 VPN 通道。視需要按一下「新增通道」,新增另一個「VPN 通道」欄位。在範例圖中,使用了兩個通道:vpn-tunnel1-office1vpn-tunnel2-office1。新增通道完成後,按一下「完成」
    8. 點選「建立」

    「Network Connectivity Center」頁面會更新,顯示您建立的 Spoke 詳細資料。如要將 Office2 輪輻新增至中樞,請繼續為 Office 2 建立輪輻

    gcloud

    如要建立 spoke,請使用 gcloud network-connectivity spokes linked-vpn-tunnels create 指令

      gcloud network-connectivity spokes linked-vpn-tunnels create SPOKE_NAME \
        --hub=HUB_NAME \
        --description="DESCRIPTION" \
        --vpn-tunnels=TUNNEL_NAME,TUNNEL_NAME_2 \
        --region=REGION \
        --labels="KEY"="VALUE" \
        --site-to-site-data-transfer
    

    替換下列值:

    • SPOKE_NAME:Spoke 的名稱,在本例中為 office-1-spoke
    • HUB_NAME:要將 Spoke 連接至的中心名稱,在本例中為 my-hub
    • DESCRIPTION:描述輪輻的選填文字
    • :第一個高可用性 VPN 通道的名稱,在本例中為 vpn-tunnel1-office1TUNNEL_NAME
    • TUNNEL_NAME_2:多餘通道的名稱,在本例中為 vpn-tunnel2-office1;加入第二個通道時,請勿在逗號和第二個通道名稱之間使用空格
    • REGION:輪輻所在的 Google Cloud 區域,在本例中為 us-west1
    • KEY:選用標籤文字的鍵/值組合中的鍵
    • VALUE:選用標籤文字的鍵/值組合中的值

    如要將 Office2 輪輻新增至中樞,請繼續為 Office 2 建立輪輻

    API

    如要建立 Spoke,請使用 networkconnectivity.spokes.create 方法

      POST https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/spokes/SPOKE_NAME
      {
        "hub": "HUB_NAME",
        "labels": {"KEY": "VALUE"},
        "linkedVpnTunnels": {
          "uris: [
            "TUNNEL_NAME",
            "TUNNEL_NAME_2"
          ],
          "siteToSiteDataTransfer": true
        }
      }
    

    替換下列值:

    • PROJECT_ID:專案的專案 ID
    • REGION:您要尋找 Spoke 的 Google Cloud 區域,在本例中為 us-west1
    • SPOKE_NAME:子網的名稱
    • HUB_NAME:要將 Spoke 連接至的 Hub 名稱
    • KEY:選用標籤文字的鍵/值配對中的鍵
    • VALUE:選用標籤文字的鍵/值組合中的值
    • :第一個高可用性 VPN 通道的名稱,在本例中為 vpn-tunnel1-office1TUNNEL_NAME
    • TUNNEL_NAME_2:多餘通道的名稱,在本例中為 vpn-tunnel2-office1;加入第二個通道時,請勿在逗號和第二個通道名稱之間使用空格

    為 Office 2 建立輪輻

    Office2 建立輪輻。使用兩個高可用性 VPN 通道做為輪輻的基礎資源。每個通道都應源自於最靠近辦公室的區域中的高可用性 VPN 閘道。在範例圖中,這些通道分別以 vpn-tunnel1-office2vpn-tunnel2-office2 表示。

    主控台

    如要建立第二個 Spoke,請執行下列操作:

    1. 前往 Network Connectivity Center 頁面。

      前往 Network Connectivity Center

    2. 在專案下拉式選單中選取專案,在範例圖表中,專案為 my-project

    3. 按一下「Spokes」分頁標籤。

    4. 按一下「新增 Spoke」,開啟「新增 Spoke」頁面。

    5. 在「新增輪輻」表單中,將「輪輻類型」欄位設為「VPN 通道」

    6. 輸入「Spoke name」(Spoke 名稱),在本例中為 office-2-spoke

    7. 視需要輸入 Spoke 的「Description」(說明)

    8. 選取 Spoke 的「Region」(區域),在範例圖表中,Spoke 位於 us-east1

    9. 在「站對站資料移轉」下方,選取「開啟」

    10. 確認「虛擬私有雲網路」欄位設為與您建立的最後一個 Spoke 相同的網路;在範例圖表中,這是 network-a

    11. 選取 VPN 通道。視需要按一下「新增通道」,新增另一個「VPN 通道」欄位。在範例圖中,使用了兩個通道:vpn-tunnel1-office2vpn-tunnel2-office2。新增通道完成後,按一下「完成」

    12. 點選「建立」

    gcloud

    如要建立 spoke,請使用 gcloud network-connectivity spokes linked-vpn-tunnels create 指令

      gcloud network-connectivity spokes linked-vpn-tunnels create SPOKE_NAME \
        --hub=HUB_NAME \
        --description="DESCRIPTION" \
        --vpn-tunnels=TUNNEL_NAME,TUNNEL_NAME_2 \
        --region=REGION \
        --labels="KEY"="VALUE" \
        --site-to-site-data-transfer
    

    替換下列值:

    • SPOKE_NAME:Spoke 的名稱,在本例中為 office-2-spoke
    • HUB_NAME:要將 Spoke 連接至的 Hub 名稱,在本例中為 my-hub
    • DESCRIPTION:描述輪輻的選填文字
    • :第一個高可用性 VPN 通道的名稱,在本例中為 vpn-tunnel1-office2TUNNEL_NAME
    • TUNNEL_NAME_2:多餘通道的名稱,在本例中為 vpn-tunnel2-office2;加入第二個通道時,請勿在逗號和第二個通道名稱之間使用空格
    • REGION:輪輻所在的 Google Cloud 區域,在本例中為us-east1
    • KEY:選用標籤文字的鍵/值組合中的鍵
    • VALUE:選用標籤文字的鍵/值組合中的值

      如要將 Office2 輪輻新增至中樞,請繼續為 Office 2 建立輪輻

    API

    如要建立 Spoke,請使用 networkconnectivity.spokes.create 方法

      POST https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/spokes/SPOKE_NAME
      {
        "hub": "HUB_NAME",
        "labels": {"KEY": "VALUE"},
        "linkedVpnTunnels": {
          "uris": [
            "TUNNEL_NAME",
            "TUNNEL_NAME_2"
          ],
          "siteToSiteDataTransfer": true
        }
      }
    

    替換下列值:

    • PROJECT_ID:專案的專案 ID
    • REGION:您要尋找 Spoke 的 Google Cloud 區域,在本例中為 us-east1
    • SPOKE_NAME:子網的名稱
    • HUB_NAME:要將 Spoke 連接至的 Hub 名稱
    • KEY:選用標籤文字的鍵/值配對中的鍵
    • VALUE:選用標籤文字的鍵/值組合中的值
    • :第一個高可用性 VPN 通道的名稱,在本例中為 vpn-tunnel1-office2TUNNEL_NAME
    • TUNNEL_NAME_2:多餘通道的名稱,在本例中為 vpn-tunnel2-office2;加入第二個通道時,請勿在逗號和第二個通道名稱之間使用空格

    驗證設定

    設定中樞和輪輻後,您應該就能將流量從一個辦公室的虛擬機器 (VM) 執行個體傳遞至另一個辦公室的 VM 執行個體。如要這麼做,每個 VM 都必須存取所在區域的 VPN 通道。

    清除設定

    請按照下列各節的步驟,清除範例設定。如要避免系統繼續計費,請刪除您建立的資源。

    刪除專案

    如要刪除您建立的專案,請按照下列步驟操作。 或者,您也可以保留專案並刪除個別資源,詳情請參閱下節。

    1. In the Google Cloud console, go to the Manage resources page.

      Go to Manage resources

    2. In the project list, select the project that you want to delete, and then click Delete.
    3. In the dialog, type the project ID, and then click Shut down to delete the project.

    刪除兩個輪輻

    您必須先刪除所有輪輻,才能刪除中樞。

    主控台

    1. 前往「Network Connectivity Center」頁面。

      前往 Network Connectivity Center

    2. 在專案下拉式選單中選取專案,在範例圖表中,專案為 my-project

    3. 按一下「Spokes」分頁標籤。

    4. 查看專案的「Spoke names」(Spoke 名稱) 清單。

    5. 選取要刪除的輪輻核取方塊,在本例中為 office-1-spokeoffice-2-spoke

    6. 按一下「刪除輪輻」

    7. 在確認對話方塊中按一下「刪除」

    gcloud

    如要刪除 Spoke,請使用 gcloud network-connectivity spokes delete 指令。請使用兩次指令,一次刪除 office-1-spoke,另一次刪除 office-2-spoke

      gcloud network-connectivity spokes delete SPOKE_NAME \
        --region=REGION
    

    替換下列值:

    • SPOKE_NAME:要刪除的 Spoke 名稱,在本例中為 office-1-spokeoffice-2-spoke
    • REGION:輪輻所在的 Google Cloud 區域

    API

    如要刪除輪輻,請使用 networkconnectivity.spokes.delete 方法。使用這個方法兩次,第一次刪除 office-1-spoke,第二次刪除 office-2-spoke

      DELETE https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/spokes/SPOKE_NAME
    

    替換下列值:

    • PROJECT_ID:含有輪輻的專案 ID。在範例圖中,專案為 my-project
    • REGION:輪輻所在的 Google Cloud 區域
    • SPOKE_NAME:要刪除的 Spoke 名稱,在本例中為 office-1-spokeoffice-2-spoke

    刪除中樞

    刪除輪輻後,即可刪除中樞。

    主控台

    1. 在 Google Cloud 控制台中,前往「Network Connectivity Center」頁面。

      前往 Network Connectivity Center

    2. 在專案下拉式選單中選取專案,範例圖中的專案為 my-project

    3. 按一下 「刪除中心」

    4. 在確認對話方塊中按一下「刪除」,即可刪除中樞。

    gcloud

    如要刪除中樞,請使用 gcloud network-connectivity hubs delete 指令

      gcloud network-connectivity hubs delete HUB_NAME /
        --project=PROJECT_ID
    

    替換下列值:

    • HUB_NAME:要刪除的中樞名稱,在本例中為 my-hub
    • PROJECT_ID:包含中樞的專案 ID;在範例圖表中,專案為 my-project

    API

    如要刪除中樞,請使用 networkconnectivity.hubs.delete 方法

      DELETE https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/hubs/HUB_NAME
    

    替換下列值:

    • PROJECT_ID:包含中樞的專案 ID;在範例圖表中,專案為 my-project
    • HUB_NAME:要刪除的中心名稱

    刪除虛擬私有雲網路和子網路

    刪除您為本教學課程設定的虛擬私有雲網路子網路

    後續步驟