本教學課程說明如何使用 Network Connectivity Center 中樞與 Cloud VPN 輪輻,設定兩個分公司之間的資料移轉。
如要進一步瞭解如何建立中樞和輪輻,請參閱「使用中樞和輪輻」。
事前準備
開始之前,請先詳閱下列各節。
建立或選取專案
如要輕鬆設定 NCC,請先找出有效的專案。
- 登入 Google Cloud 帳戶。如果您是 Google Cloud新手,歡迎 建立帳戶,親自評估產品在實際工作環境中的成效。新客戶還能獲得價值 $300 美元的免費抵免額,可用於執行、測試及部署工作負載。
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
安裝 Google Cloud CLI。
-
若您採用的是外部識別資訊提供者 (IdP),請先使用聯合身分登入 gcloud CLI。
-
執行下列指令,初始化 gcloud CLI:
gcloud init -
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
安裝 Google Cloud CLI。
-
若您採用的是外部識別資訊提供者 (IdP),請先使用聯合身分登入 gcloud CLI。
-
執行下列指令,初始化 gcloud CLI:
gcloud init 如果使用 Google Cloud CLI,請使用
gcloud config set指令設定專案 ID。gcloud config set project PROJECT_ID
將
PROJECT_ID替換為專屬專案 ID。本頁的 gcloud CLI 指令假設您已設定專案 ID。
如要確認專案 ID 設定正確無誤,請使用
gcloud config list指令。gcloud config list --format='text(core.project)'
資源識別慣例
使用 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"
|
範例拓撲
下圖說明本教學課程中使用的範例資源。
設定資料移轉連線
如要設定資料移轉連線,請按照下列步驟操作:
- 建立 Google Cloud 資源,例如虛擬私有雲 (VPC) 網路、高可用性 VPN 閘道和通道,以及 Cloud Router。
- 建立中樞。
- 為第一個和第二個分公司定義 Spoke。每個輪輻都應使用 VPN 通道做為基礎資源。
- 驗證設定。
建立 Google Cloud 資源
本教學課程假設您已建立下列Google Cloud 資源:
- 動態轉送模式設為
global的虛擬私有雲網路 - 最靠近
Office1的區域:子網路、高可用性 VPN 閘道、Cloud Router,以及將閘道介面連線至Office1的通道 - 最靠近
Office2的區域:子網路、高可用性 VPN 閘道、Cloud Router,以及將閘道介面連線至Office2的通道
如需建立這些資源,請參閱下列文件:
- 如要建立虛擬私有雲網路,請參閱「建立網路」。由於這項設定會使用不同區域的輪輻,請將網路的動態轉送模式設為
global。 - 如要建立子網路,請參閱「新增子網路」。
- 如要建立高可用性 VPN 閘道、通道和 Cloud Router,請參閱「建立高可用性 VPN 閘道至對等互連 VPN 閘道」。
找出現有 Google Cloud 資源或建立新資源後,請繼續下一節。
建立中樞
首先,您要建立中樞。稍後,您會將輪輻附加至這個中樞。
控制台
前往 Google Cloud 控制台的「NCC」頁面。
在專案下拉式選單中選取專案,例如範例圖中的
my-project專案。輸入「中樞名稱」,在本例中為
my-hub。輸入說明 (選填)。
確認專案 ID。如果專案 ID 不正確,請使用畫面頂端的下拉式選單選取其他專案。
按一下「繼續」。
如要將
Office1輪輻新增至中樞,請繼續 為 Office 1 建立輪輻。
gcloud
如要建立中樞,請使用 gcloud network-connectivity hubs create 指令。
gcloud network-connectivity hubs create HUB_NAME \
--description="DESCRIPTION" \
--labels="KEY"="VALUE"
替換下列值:
HUB_NAME:新中樞的名稱,在本例中為my-hubDESCRIPTION:描述中心的選填文字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-projectHUB_NAME:新中樞的名稱,例如my-hubDESCRIPTION:描述中心的選填文字KEY:選用標籤文字的鍵/值組合中的鍵VALUE:選用標籤文字的鍵/值組合中的值
如要將 Office1 輪輻新增至中樞,請繼續
為 Office 1 建立輪輻。
為辦公室 1 建立輪輻
為 Office1 建立輪輻。請使用兩個高可用性 VPN 通道,做為輪輻的基礎資源。每個通道都應來自最靠近辦公室區域中的高可用性 VPN 閘道。在範例圖中,這些通道分別以 vpn-tunnel1-office1 和 vpn-tunnel2-office1 表示。
控制台
下列步驟接續自「建立中樞」。 這些說明會介紹如何在指定中樞名稱和說明後,立即建立子網。
- 在「新增輪輻」表單中,將「輪輻類型」欄位設為「VPN 通道」。
- 輸入「Spoke name」(輪輻名稱),在本例中為
office-1-spoke。 - 視需要輸入輪輻的「說明」。
- 選取輪輻的「區域」。在範例圖表中,輪輻位於
us-west1。 - 在「站對站資料移轉」下方,選取「開啟」。
- 選取適當的 虛擬私有雲網路;在範例圖表中,輪輻位於
network-a。 - 選取 VPN 通道。如有需要,請按一下「新增通道」,新增另一個 VPN 通道欄位。在範例圖中,我們使用了兩個通道:
vpn-tunnel1-office1和vpn-tunnel2-office1。新增通道後,點選「完成」。 - 點選「建立」。
「Network Connectivity Center」頁面會更新,顯示您建立的輪輻詳細資料。如要將 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-spokeHUB_NAME:要將 Spoke 連接至的 Hub 名稱,在本例中為my-hubDESCRIPTION:描述輪輻的選填文字TUNNEL_NAME:第一個高可用性 VPN 通道的名稱,在本例中為vpn-tunnel1-office1TUNNEL_NAME_2:備援通道的名稱,在本例中為vpn-tunnel2-office1;加入第二個通道時,請勿在逗號和第二個通道名稱之間使用空格REGION:輪輻所在的 Google Cloud 區域,在本例中為us-west1KEY:選用標籤文字的鍵/值組合中的鍵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:專案的專案 IDREGION:要尋找 Spoke 的 Google Cloud 區域,在本例中為us-west1SPOKE_NAME:輪輻名稱HUB_NAME:要將 Spoke 連接至的 Hub 名稱KEY:鍵值組中的鍵,用於選用標籤文字VALUE:選用標籤文字的鍵/值組合中的值TUNNEL_NAME:第一個高可用性 VPN 通道的名稱,在本例中為vpn-tunnel1-office1TUNNEL_NAME_2:備援通道的名稱,在本例中為vpn-tunnel2-office1;加入第二個通道時,請勿在逗號和第二個通道名稱之間使用空格
為辦公室 2 建立輪輻
為 Office2 建立輪輻。請使用兩個高可用性 VPN 通道,做為輪輻的基礎資源。每個通道都應來自最靠近辦公室區域中的高可用性 VPN 閘道。在範例圖表中,這些通道會以 vpn-tunnel1-office2 和 vpn-tunnel2-office2 表示。
控制台
如要建立第二個 Spoke,請按照下列步驟操作:
前往 NCC 頁面。
在專案下拉式選單中選取專案,例如範例圖中的
my-project專案。按一下「Spokes」分頁標籤。
按一下「新增輪輻」,開啟「新增輪輻」頁面。
在「新增輪輻」表單中,將「輪輻類型」欄位設為「VPN 通道」。
輸入「Spoke name」(輪輻名稱),在本例中為
office-2-spoke。視需要輸入輪輻的「說明」。
選取輪輻的「區域」。在範例圖表中,輪輻位於
us-east1。在「站對站資料移轉」下方,選取「開啟」。
確認「VPC network」(虛擬私有雲網路) 欄位設為與您建立的最後一個輪輻相同的網路;在範例圖中,這是
network-a。選取 VPN 通道。如有需要,請按一下「新增通道」,新增另一個 VPN 通道欄位。在範例圖中,我們使用了兩個通道:
vpn-tunnel1-office2和vpn-tunnel2-office2。新增通道後,點選「完成」。點選「建立」。
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-spokeHUB_NAME:要將 Spoke 連接至的 Hub 名稱,在本例中為my-hubDESCRIPTION:描述輪輻的選填文字TUNNEL_NAME:第一個高可用性 VPN 通道的名稱,在本例中為vpn-tunnel1-office2TUNNEL_NAME_2:備援通道的名稱,在本例中為vpn-tunnel2-office2;加入第二個通道時,請勿在逗號和第二個通道名稱之間使用空格REGION:輪輻所在的 Google Cloud 區域,在本例中為us-east1KEY:選用標籤文字的鍵/值組合中的鍵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:專案的專案 IDREGION:要尋找 Spoke 的 Google Cloud 區域,在本例中為us-east1SPOKE_NAME:輪輻的名稱HUB_NAME:要將 Spoke 連接至的 Hub 名稱KEY:鍵值組中的鍵,用於選用標籤文字VALUE:選用標籤文字的鍵/值組合中的值TUNNEL_NAME:第一個高可用性 VPN 通道的名稱,在本例中為vpn-tunnel1-office2TUNNEL_NAME_2:備援通道的名稱,在本例中為vpn-tunnel2-office2;加入第二個通道時,請勿在逗號和第二個通道名稱之間使用空格
驗證設定
設定中樞和輪輻後,您就能將流量從一個辦公室的虛擬機器 (VM) 執行個體,傳遞至另一個辦公室的 VM 執行個體。每個 VM 都必須有權存取所在區域的 VPN 通道,才能成功傳遞。
清理設定
請按照下列各節的步驟,清理範例設定。如要避免繼續計費,請刪除您建立的資源。
刪除專案
如要刪除您建立的專案,請按照下列步驟操作。 或者,您也可以保留專案並刪除個別資源,詳情請參閱以下各節。
- 前往 Google Cloud 控制台的「Manage resources」(管理資源) 頁面。
- 在專案清單中選取要刪除的專案,然後點選「Delete」(刪除)。
- 在對話方塊中輸入專案 ID,然後按一下 [Shut down] (關閉) 以刪除專案。
刪除兩個輪輻
您必須先刪除所有輪輻,才能刪除中樞。
控制台
前往 NCC 頁面。
在專案下拉式選單中選取專案,例如範例圖中的
my-project專案。按一下「Spokes」分頁標籤。
查看專案的「Spoke names」(Spoke 名稱) 清單。
選取要刪除的輪輻核取方塊,在本例中為
office-1-spoke和office-2-spoke。按一下「刪除輪輻」。
在確認對話方塊中點按「刪除」。
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-spoke和office-2-spokeREGION:輪輻所在的 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:包含 Spoke 的專案 ID。在範例圖中,專案為my-projectREGION:輪輻所在的 Google Cloud 區域SPOKE_NAME:要刪除的 Spoke 名稱,在本例中為office-1-spoke和office-2-spoke
刪除中樞
刪除輪輻後,即可刪除中樞。
控制台
前往 Google Cloud 控制台的「NCC」頁面。
在專案下拉式選單中選取專案,在範例圖表中,專案為
my-project。按一下 「刪除中心」。
在確認對話方塊中,按一下「刪除」即可刪除中樞。
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-projectHUB_NAME:要刪除的中心名稱
刪除虛擬私有雲網路和子網路
後續步驟
- 如要查看範例拓撲,請參閱「站對站資料移轉的範例拓撲」。
- 如要進一步瞭解 NCC 如何啟用全網狀連線,請參閱「透過站對站資料移轉功能交換路由」。
- 如要瞭解高可用性需求,請參閱輪輻資源的高可用性需求。
- 如要建立中樞和輪輻,請參閱「與中樞和輪輻搭配使用」。
- 如要瞭解 NCC 問題的解決方法,請參閱「疑難排解」。