透過虛擬私有雲網路對等互連,從 Google Cloud 建立連線

本頁說明如何從 Google Cloud成功建立及佈建 Amazon Web Services (AWS) 連線的合作夥伴 Cross-Cloud Interconnect。

如果沒有 AWS 提供的啟用金鑰,可以從 Google Cloud啟動及佈建 AWS 適用的合作夥伴 Cross-Cloud Interconnect 連線。

透過虛擬私有雲網路對接連線,無法透過 Private Service Connect 存取 Google API。

設定需求

開始 AWS 適用的合作夥伴 Cross-Cloud Interconnect 佈建程序前,請確認符合下列條件:

  • 您必須已擁有 Amazon Web Services 帳戶。
  • 如果還沒有虛擬私有雲 (VPC) 網路,您也必須建立一個,才能將傳輸作業連線至該網路。

如要成功建立連線,請務必建立 transport 資源。 請按照本頁面的操作說明建立傳輸作業。

事前準備

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

建立或選取專案

如要輕鬆設定 AWS 適用的合作夥伴 Cross-Cloud Interconnect,請先找出有效的專案。

  1. 登入 Google Cloud 帳戶。如果您未曾使用過 Google Cloud,歡迎 建立帳戶,親自體驗實際使用我們產品的成效。新客戶還能獲得價值 $300 美元的免費抵免額,能用於執行、測試及部署工作負載。
  2. 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 the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify 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.

    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 the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  8. Verify 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)'

啟用 Network Connectivity API

您必須先啟用 Network Connectivity API,才能使用 Cloud Interconnect 執行任何工作。

控制台

如要啟用 Network Connectivity API,請按照下列步驟操作:

  1. 前往 Google Cloud 控制台的「Network Connectivity API」頁面。

    前往 Network Connectivity API

  2. 按一下「啟用」。

或者,您也可以按照「啟用 API」一文的說明,使用Google Cloud 控制台 API 程式庫啟用 API。

如果沒有啟用金鑰,請從 Google Cloud 啟動連線

列出可用設定檔

如要在您想佈建連線能力的區域中,列出特定專案的可用設定檔,請按照下列步驟操作。

gcloud

使用 gcloud network-connectivity transports remote-profiles list 指令。

gcloud network-connectivity transports remote-profiles list --region REGION

將 REGION 替換成要佈建連線能力的區域名稱,例如 us-west1。

API

使用 networkconnectivity.remoteTransportProfiles.list 方法,並將要求主體留空。

$ curl -H "Authorization: Bearer $(gcloud auth print-access-token)" "https://networkconnectivity.googleapis.com/v1/projects/PROJECT/locations/REGION/remoteTransportProfiles"

替換下列值:

  • PROJECT:專案名稱。
  • REGION:要佈建連線的 Google Cloud 區域 名稱,例如 us-west1。

建立 transport 資源

建立 transport 資源時,您必須指定頻寬、網路、remoteProfile 和 remoteAccountId 欄位。advertisedRoutes 是選填欄位,但為確保 AWS 的連線能力,您必須指定這個欄位。這個欄位可以是 IPv4 和 IPv6 子網路的清單。如果網路使用自動建立的子網路,請使用 10.128.0.0/9 Google Cloud中的值。

如要建立傳輸資源,請按照下列步驟操作。

控制台

  1. 前往 Google Cloud 控制台的「合作夥伴 Cross-Cloud Interconnect」頁面。

    前往 Partner Cross-Cloud Interconnect

  2. 在專案選單中選取專案。

  3. 按一下「Create transport」(建立傳輸作業)。

  4. 在「連線起點」下方,按一下「Google Cloud」。

  5. 按一下「繼續」。

  6. 在「Transport profile」(傳輸設定檔) 下方,選擇要佈建連線的區域中的傳輸。

  7. 在「Remote ID」(遠端 ID) 欄位中,輸入 AWS 帳戶的 ID。

  8. 按一下「繼續」。

  9. 在「Basic configuration」(基本設定) 欄位中,輸入下列內容:

    • 要建立的傳輸資源「Transport name」(傳輸名稱)。
    • 傳輸資源的「Description」(說明) (選填)。
    • (選用) 為連線選擇「頻寬」,例如 1G。
    • (選用) 選擇 IP 堆疊類型。您可以選擇「IPv4」或「IPv4 and IPv6 (dual stack)」(IPv4 和 IPv6 (雙重堆疊))。
    • 選擇「傳輸連線」。
  10. 按一下「繼續」。

  11. 在「連線」下方,選擇虛擬私有雲網路的名稱。

  12. 在「Advertised routes」(廣告路由) 欄位中,輸入要向 AWS 宣傳的 Google Cloud VPC 網路 路由 IP 位址清單,並以半形逗號分隔。

  13. 點選「建立」。

    建立傳輸資源後,系統會顯示「Share pairing key」(共用配對金鑰) 對話方塊,並顯示產生的配對金鑰。

  14. 如要完成設定,請在「分享配對金鑰」頁面按一下「前往 AWS」,並在 AWS 控制台中完成相關步驟。

  15. 如要驗證連線,請按一下「查看傳輸詳細資料」。「傳輸作業詳細資料」頁面會顯示傳輸作業詳細資料和連線狀態。

gcloud

使用 gcloud network-connectivity transports create 指令:

gcloud network-connectivity transports create TRANSPORT_NAME \
    --region=REGION \
    --activation-key=ACTIVATION_KEY \
    --network=NETWORK \
    --advertised-routes=ADVERTISED_ROUTES \
    --stack-type=STACK_TYPE

替換下列值:

  • TRANSPORT_NAME:要建立的傳輸資源名稱
  • LOCATION:要佈建連線的區域名稱,例如 us-west1
  • ACTIVATION_KEY:您從 AWS 收到的啟用金鑰
  • NETWORK:虛擬私有雲網路的名稱
  • ADVERTISED_ROUTE:Google Cloud 虛擬私有雲網路路由的 IP 位址,會公告至 AWS。
  • STACK_TYPE (選用):IP 位址版本堆疊類型。必須是 IPV4_ONLY 或 IPV4_IPV6。預設值為 IPV4_ONLY

如要查看作業狀態,請使用 gcloud network-connectivity operations describe 指令。

gcloud network-connectivity operations describe \
    --operation=OPERATION_ID \
    --region=REGION

更改下列內容:

  • OPERATION_ID:作業 ID。
  • REGION:要佈建連線的 Google Cloud 區域 名稱,例如 us-west1。

API

使用 networkconnectivity.transports.create 方法指定 TRANSPORT_ID,類似於下列範例:

curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" "https://networkconnectivity.googleapis.com/v1/projects/PROJECT/locations/REGION/transports?transportId="TRANSPORT_NAME" --data '{
"network": "NETWORK",
"remoteProfile": "REMOTE_PROFILE_NAME",
"bandwidth": "BANDWIDTH",
"remoteAccountId": "REMOTE_ACCOUNT_ID",
"advertisedRoutes": ["ADVERTISED_ROUTE"],
"stackType": "STACK_TYPE"
}'

替換下列值:

  • PROJECT:要建立傳輸作業的專案名稱。
  • REGION:要佈建連線的 Google Cloud 區域 名稱,例如 us-west1。
  • TRANSPORT_NAME:傳輸資源的名稱。
  • REMOTE_ACCOUNT_ID:遠端供應商帳戶的 ID。
  • REMOTE_PROFILE_NAME:與上一個步驟中 gcloud network-connectivity transports remote-profiles list 指令傳回的 Google Cloud 區域相關聯的供應商遠端設定檔名稱。
  • BANDWIDTH:連線選擇的頻寬 (例如 1G) 必須是所選 remoteProfile 支援的頻寬。
  • NETWORK:虛擬私有雲網路的名稱。
  • ADVERTISED_ROUTE:要向供應商宣傳的虛擬私有雲網路路由 IP 位址。Google Cloud
  • STACK_TYPE (選用):IP 位址版本堆疊類型。必須是 IPV4_ONLY 或 IPV4_IPV6。預設為 IPV4_ONLY。

在輸出內容中,找出 name 欄位的值。格式為 projects/PROJECT/locations/REGION/operations/OPERATION_ID,其中 OPERATION_ID 是作業 ID。

如要查看作業狀態,請使用 networkconnectivity.operations.get 方法。

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
"https://networkconnectivity.googleapis.com/v1/projects/PROJECT/locations/REGION/operations/OPERATION_ID

更改下列內容:

  • PROJECT:您建立傳輸作業的專案名稱。
  • REGION:要佈建連線的 Google Cloud 區域 名稱,例如 us-west1。
  • OPERATION_ID:作業 ID。

如果 transport 資源已建立完成,輸出內容會包含 "done": true 這行。從輸出內容複製下列值,以供後續步驟使用:

  • generatedActivationKey 欄位的值。
  • peeringNetwork 欄位的值。

在 AWS API 完成相關步驟

按照 AWS API 參考文件中的操作說明,使用上一個步驟中產生的啟用金鑰。

擷取對等互連網路名稱

擷取 transport 資源所連結的對等互連網路名稱。對等互連網路的名稱用於建立虛擬私有雲網路對等互連

gcloud

如要查看對等互連網路名稱,請使用 network-connectivity transports describe 指令。

gcloud network-connectivity transports describe "TRANSPORT_NAME" --region REGION

替換下列值:

  • TRANSPORT_NAME:您建立的傳輸方式名稱。
  • REGION:傳輸機制所在區域的名稱,例如 us-west1。

如果指令執行成功,請複製輸出內容的 peeringNetwork 欄位,以便建立虛擬私有雲網路對等互連。

API

使用 networkconnectivity.transports.get 方法:

GET https://networkconnectivity.googleapis.com/v1/projects/PROJECT/locations/LOCATION/transport/TRANSPORT_NAME

替換下列值:

  • PROJECT:您在其中建立傳輸資源的專案名稱。
  • LOCATION:要佈建連線能力的 Google Cloud 區域,例如 us-west1。
  • TRANSPORT_NAME:您建立的傳輸作業名稱。

建立虛擬私有雲網路對等互連

您可以在Google Cloud 端主動建立虛擬私有雲網路對接。如要這麼做,請使用先前建立的 transport 資源傳回的 peeringNetwork,並確保您建立的對等互連與堆疊類型相同。預設堆疊類型與 transport 資源的 IPV4_ONLY 相符。

如要接收 AWS 路由,請啟用 Import custom routes 欄位。

對等互連虛擬私有雲網路中的 MTU 會明確設為最大值,以免連線發生 MTU 問題。如果使用的 MTU 小於 8896,可能會收到 WARNING: Some requests generated warnings: - Network MTU 1460B does not match the peer's MTU 8896B 警告。在這種情況下,請務必確保 Google Cloud 虛擬私有雲網路和 AWS 虛擬私有雲網路使用相符的 MTU 設定。如果這些值不相符,您可能需要將 MTU 值覆寫為最低公分母。舉例來說,如果您在 Google Cloud 中使用 8896,在 AWS 中使用 8800,則 Google Cloud 中的所有項目都必須設定為 8800。

gcloud

如要建立虛擬私有雲網路對等互連,請使用 gcloud compute networks peerings create 指令。

gcloud compute networks peerings create "TRANSPORT_NAME" \
    --network="VPC_NETWORK" \
    --peer-network="PEERING_NETWORK" \
    --import-custom-routes \
    --export-custom-routes

替換下列值:

  • TRANSPORT_NAME:您建立的傳輸作業名稱。
  • VPC_NETWORK:要列出路徑的虛擬私有雲網路名稱。
  • PEERING_NETWORK:Transport 資源提供的虛擬私有雲網路名稱,從 transport 資源的 peeringNetwork 欄位複製而來。

如果指令執行成功,輸出內容的 state 欄位值會是 ACTIVE。

API

如要建立虛擬私有雲網路對等互連,請使用 compute.networks.addPeering 方法。

POST https://compute.googleapis.com/compute/v1/projects/PROJECT/global/networks/NETWORK/addPeering

替換下列值:

  • PROJECT:要建立對接的專案名稱。
  • NETWORK:要新增對等互連的網路資源名稱。

確認連線

您可以列出對接的虛擬私有雲網路和路由表,確認連線能力已建立。AWS 設定完成後,您可以在清單中查看 AWS 路由。

控制台

  1. 前往 Google Cloud 控制台的「合作夥伴 Cross-Cloud Interconnect」頁面。

    前往合作夥伴 Cross-Cloud Interconnect

  2. 在專案選單中選取專案。

  3. 在「Transports」(傳輸) 頁面中,點選剛才建立的傳輸。

  4. 「傳輸詳細資料」頁面會顯示傳輸詳細資料和連線狀態。

gcloud

如要列出對接的虛擬私有雲網路,請使用 gcloud compute networks peerings list 指令。

gcloud compute networks peerings list

輸出結果會與下列內容相似:

NAME           NETWORK  PEER_PROJECT           PEER_NETWORK                   STACK_TYPE  PEER_MTU  IMPORT_CUSTOM_ROUTES  EXPORT_CUSTOM_ROUTES  UPDATE_STRATEGY  STATE   STATE_DETAILS
cci-virginia  cci      ke526b767340356b7p-tp  transport-b52816f13d929baf-vpc  IPV4_ONLY   8896      True                  True                  INDEPENDENT      ACTIVE  [2026-01-22T07:20:58.891-08:00]: Connected.

如要列出特定傳輸的路線,請使用 gcloud compute networks peerings list-routes 指令。

gcloud compute networks peerings list-routes TRANSPORT_NAME \
    --direction=INCOMING \
    --network=NETWORK \
    --region=REGION

替換下列值:

  • TRANSPORT_NAME:傳輸資源的名稱。
  • NETWORK:要列出路由表的虛擬私有雲網路名稱。
  • REGION:傳輸資源的區域。

輸出結果會與下列內容相似:

DEST_RANGE   TYPE                   NEXT_HOP_REGION  PRIORITY  STATUS
10.0.0.0/16  DYNAMIC_PEERING_ROUTE  us-east4         0         accepted
10.0.0.0/16  DYNAMIC_PEERING_ROUTE  us-east4         0         accepted

API

如要列出對等互連網路,請使用 compute.networks.list 方法。

GET https://compute.googleapis.com/compute/v1/projects/PROJECT/global/networks

將 PROJECT 替換成要列出網路的專案名稱。

如要列出路徑,請使用 compute.routes.listPeeringRoutes 方法

GET https://compute.googleapis.com/compute/v1/projects/PROJECT/global/networks/NETWORK/listPeeringRoutes

替換下列值:

  • 將 PROJECT 替換為要列出路徑的專案名稱。
  • NETWORK:要列出路由表的虛擬私有雲網路名稱。

後續步驟