建立及管理網路連結

本頁面說明消費者網路管理員如何建立及管理 Private Service Connect 網路連結。服務供應商虛擬私有雲網路可透過網路連結,與消費者虛擬私有雲網路建立連線。

事前準備

  • 您必須在專案中啟用 Compute Engine API
  • 如要手動指定可連線至網路附件的專案,您必須知道專案 ID。

角色

如要取得建立、查看及刪除網路附件所需的權限,請要求管理員授予您專案的Compute 網路管理員 (roles/compute.networkAdmin) 身分與存取權管理角色。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。

您或許還可透過自訂角色或其他預先定義的角色取得必要權限。

建立子網路

建立網路附件時,請指派單一一般子網路。這個子網路必須與網路連結位於同一個地區。一個子網路可透過多個網路附件共用。子網路可以是僅限 IPv4 或雙重堆疊。 雙堆疊子網路必須使用內部 IPv6 範圍。

您無法將僅支援 IPv6 的子網路 (搶先版) 用於網路附件。

如要進一步瞭解如何建立子網路,請參閱「建立及管理虛擬私有雲網路」。

建立網路連結

網路連結是區域資源,代表 Private Service Connect 介面連線的用戶端。如要順利建立虛擬機器 (VM) 執行個體,網路附件必須與相關聯的 Private Service Connect 介面 VM 位於相同區域。

網路連結的授權政策會決定網路連結是否可接受來自 Private Service Connect 介面的連線。

您可以更新網路附件的子網路、接受清單、拒絕清單和說明。

建立手動接受連線的網路連結

您可以建立網路連結,手動接受連線。建立這類附件前,請務必瞭解要接受的專案 ID。

主控台

  1. 前往 Google Cloud 控制台的「Private Service Connect」頁面:

    前往 Private Service Connect

  2. 按一下「網路連結」

  3. 按一下「Create network attachment」(建立網路連結)

  4. 輸入名稱

  5. 選取「網路」

  6. 選擇一個 [Region] (地區)

  7. 選取「子網路」

  8. 按一下「接受所選專案的連線」

  9. 按一下「新增已接受的專案」,然後輸入要接受連線的每個專案 ID。

  10. 選用:按一下「新增遭拒絕的專案」,然後輸入要明確拒絕連線的每個專案 ID。

  11. 按一下「Create network attachment」(建立網路連結)

gcloud

使用 network-attachments create 指令

gcloud compute network-attachments create ATTACHMENT_NAME \
    --region=REGION \
    --connection-preference=ACCEPT_MANUAL \
    --producer-accept-list=ACCEPTED_PROJECTS \
    --producer-reject-list=REJECTED_PROJECTS \
    --subnets=SUBNET_NAME

更改下列內容:

  • ATTACHMENT_NAME:網路附件的名稱。
  • REGION:網路連結的區域。
  • ACCEPTED_PROJECTS:可連線至這個網路附件的專案 ID。您可以在以半形逗號分隔的清單中加入多個值。
  • REJECTED_PROJECTS:無法連線至這個網路附件的專案 ID。您可以在以半形逗號分隔的清單中加入多個值。
  • SUBNET_NAME:要與這個網路附件建立關聯的子網路名稱。

API

networkAttachments.insert 方法發出 POST 要求。

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/networkAttachments
{
  "connectionPreference": "ACCEPT_MANUAL",
  "name": "ATTACHMENT_NAME",
  "producerAcceptLists": [
    "ACCEPTED_PROJECT_LIST"
  ],
  "producerRejectLists": [
    "REJECTED_PROJECT_LIST"
  ],
  "subnetworks": [
    "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET_NAME"
  ]
}

更改下列內容:

  • PROJECT_ID:要在其中建立網路附件的專案 ID。
  • REGION:網路連結的區域
  • ATTACHMENT_NAME:網路附件的名稱
  • ACCEPTED_PROJECT_LIST:可連線至這個網路附件的專案 ID。您可以在下列表單中加入多個 ID:"id-one", "id-two"
  • REJECTED_PROJECT_LIST:無法連線至這個網路附件的專案 ID。您可以在下列表單中加入多個 ID:"id-one", "id-two"
  • SUBNET_NAME:要與網路附件建立關聯的子網路名稱。

建立自動接受連線的網路連結

您可以建立網路連結,自動接受來自參照該網路連結的任何 Private Service Connect 介面連線。

主控台

  1. 前往 Google Cloud 控制台的「Private Service Connect」頁面:

    前往 Private Service Connect

  2. 按一下「網路連結」

  3. 按一下「Create network attachment」(建立網路連結)

  4. 輸入名稱

  5. 選取「網路」

  6. 選擇一個 [Region] (地區)

  7. 選取「子網路」

  8. 按一下「自動接受所有專案的連線」

  9. 按一下「Create network attachment」(建立網路連結)

gcloud

使用 network-attachments create 指令

gcloud compute network-attachments create ATTACHMENT_NAME \
    --region=REGION \
    --connection-preference=ACCEPT_AUTOMATIC \
    --subnets=SUBNET_NAME

更改下列內容:

  • ATTACHMENT_NAME:網路附件的名稱。
  • REGION:網路連結的區域。
  • SUBNET_NAME:要與這個網路附件建立關聯的子網路名稱。

API

networkAttachments.insert 方法發出 POST 要求。

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/networkAttachments
{
  "connectionPreference": "ACCEPT_AUTOMATIC",
  "name": "ATTACHMENT_NAME",
  "subnetworks": [
    "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET_NAME"
  ]
}

更改下列內容:

  • PROJECT_ID:要在其中建立網路附件的專案 ID。
  • REGION:網路連結的區域
  • ATTACHMENT_NAME:網路附件的名稱
  • SUBNET_NAME:要與網路附件建立關聯的子網路名稱。

列出網路連結

主控台

  1. 前往 Google Cloud 控制台的「Private Service Connect」頁面:

    前往 Private Service Connect

  2. 按一下「網路連結」

gcloud

  • 如要列出專案中的所有網路附件,請使用 network-attachments list 指令

    gcloud compute network-attachments list
    
  • 如要列出特定地區或多個地區的網路附件,請使用 network-attachments list 指令,並指定地區。

    gcloud compute network-attachments list
       --regions=REGIONS
    

    REGIONS 替換為要列出網路附件的區域。您可以在以半形逗號分隔的清單中加入多個區域。

API

如要列出特定區域中的網路附件,請對 networkAttachments.list 方法發出 GET 要求

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/networkAttachments

更改下列內容:

  • PROJECT_ID:專案的 ID。
  • REGION:網路連結的區域。

說明網路連結

您可以說明網路連結,查看其詳細資料,包括相關聯的 Private Service Connect 介面連線。您可以查看每個連線的 Private Service Connect 介面指派 IP 位址。

主控台

  1. 前往 Google Cloud 控制台的「Private Service Connect」頁面:

    前往 Private Service Connect

  2. 按一下「網路連結」

  3. 選取網路連結,即可查看詳細資料和已連結專案的清單。

  4. 如要查看專案的個別 Private Service Connect 介面連線,請按一下專案名稱。

    專案的連線狀態不一定會決定該專案的 Private Service Connect 介面連線狀態。舉例來說,如果您接受某個專案的連線,然後將該專案新增至拒絕清單,專案狀態會顯示為「已拒絕」,但現有連線仍會保持開啟。系統會拒絕該專案的新連線。

gcloud

使用 network-attachments describe 指令

gcloud compute network-attachments describe ATTACHMENT_NAME \
    --region=REGION

更改下列內容:

  • ATTACHMENT_NAME:要說明的網路附件名稱。
  • REGION:網路連結的區域

系統會以以下格式顯示已連線的 Private Service Connect 介面:

connectionEndpoints:
- ipAddress: 10.6.0.59
  projectIdOrNum: '123456789'
  status: ACCEPTED
  subnetwork: https://www.googleapis.com/compute/v1/projects/consumer-project-id/regions/us-central1/subnetworks/consumer-subnet
- ipAddress: 10.6.0.11
  projectIdOrNum: '987654321'
  status: ACCEPTED
  subnetwork: https://www.googleapis.com/compute/v1/projects/consumer-project-id/regions/us-central1/subnetworks/consumer-subnet
  ```

API

如要說明網路附件並查看其詳細資料,請向 networkAttachments.get 方法發出 GET 要求。

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/networkAttachments/ATTACHMENT_NAME

更改下列內容:

  • PROJECT_ID:專案的 ID。
  • REGION:網路連結的區域。
  • ATTACHMENT_NAME:網路附件的名稱。

系統會以以下格式顯示已連線的 Private Service Connect 介面:

"connectionEndpoints": [
  {
    "status": "ACCEPTED",
    "projectIdOrNum": "123456789",
    "subnetwork": "https://www.googleapis.com/compute/v1/projects/consumer-project-id/regions/us-central1/subnetworks/consumer-subnet-1",
    "ipAddress": "10.6.0.11"
  },
  {
    "status": "ACCEPTED",
    "projectIdOrNum": "987654321",
    "subnetwork": "https://www.googleapis.com/compute/v1/projects/consumer-project-id/regions/us-central1/subnetworks/consumer-subnet-2",
    "ipAddress": "10.6.0.59"
  }
]

更新網路連結

您可以更新網路附件,方法是替換其子網路、說明,或是 (如果是為手動接受連線而建立的網路附件) 接受或拒絕清單。如要更新其他欄位,請刪除網路連結,然後建立新的網路連結。

如果更換網路連結的子網路,現有連線不會受到影響。更新後建立的連線會使用新子網路的 IP 位址。

如果您替換網路附件的接受或拒絕清單,現有連線不會受到影響。更新後建立的連線會根據更新後的清單接受或拒絕。

主控台

  1. 前往 Google Cloud 控制台的「Private Service Connect」頁面:

    前往 Private Service Connect

  2. 按一下「網路連結」

  3. 按一下要更新的網路附件,然後點選「編輯」

  4. 如要取代網路附件的子網路,請按一下「子網路」,然後選取新的子網路。

  5. 如要更新接受清單,請按照下列步驟操作:

    1. 如要將專案新增至接受清單,請按一下「新增接受的專案」,然後輸入要接受的專案 ID 或專案編號。
    2. 如要從接受清單中移除專案,請將指標懸停在專案上,然後按一下 「刪除已接受的專案」
  6. 如要更新拒絕名單,請按照下列步驟操作:

    1. 如要將專案新增至拒絕清單,請按一下「新增遭拒的專案」,然後輸入要拒絕的專案 ID 或專案編號。
    2. 如要從拒絕清單中移除專案,請將指標懸停在專案上,然後按一下 「刪除遭拒專案」
  7. 按一下「Update network attachment」(更新網路連結)

gcloud

使用 network-attachments update 指令。您可以更新這裡列出的一或多個欄位,但區域除外,因為區域是用來識別網路附件。更新網路附件的接受或拒絕清單時,必須在一次更新中取代整個清單。

gcloud compute network-attachments update ATTACHMENT_NAME \
    --region=REGION \
    --subnets=SUBNET \
    --producer-accept-list=ACCEPTED_PROJECTS \
    --producer-reject-list=REJECTED_PROJECTS \
    --description=DESCRIPTION

更改下列內容:

  • ATTACHMENT_NAME:網路附件的名稱。
  • REGION:網路連結的區域。這個旗標用於識別網路附件。您無法更新網路連結的區域。
  • SUBNET:要與這個網路附件建立關聯的子網路名稱。
  • ACCEPTED_PROJECTS:可連線至這個網路附件的專案 ID。您可以在以半形逗號分隔的清單中加入多個值。您在此指定的清單會取代現有的接受清單。
  • REJECTED_PROJECTS:無法連線至這個網路附件的專案 ID。您可以在以半形逗號分隔的清單中加入多個值。您在此指定的清單會取代現有的拒絕清單。
  • DESCRIPTION:網路附件的說明。

API

  1. 傳送 API 要求,說明要更新的網路連結。
  2. 請記下網路附件的 fingerprint 欄位值。
  3. networkAttachments.patch 方法發出 PATCH 要求。從要求主體中省略您不想取代的任何欄位,但 fingerprint 除外。

    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/networkAttachments/ATTACHMENT_NAME
    {
      "fingerprint": "FINGERPRINT",
      "producerAcceptLists": [
        "ACCEPTED_PROJECT_LIST"
      ],
      "producerRejectLists": [
        "REJECTED_PROJECT_LIST"
      ],
      "subnetworks": [
        "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET_NAME"
      ],
      "description": "DESCRIPTION"
    }
    

    更改下列內容:

    • PROJECT_ID:專案的 ID。
    • REGION:網路連結的區域。
    • ATTACHMENT_NAME:網路附件的名稱。
    • FINGERPRINT:您在步驟 2 中找到的指紋欄位值。
    • ACCEPTED_PROJECT_LIST:可連線至這個網路附件的專案 ID。您可以在下列表單中加入多個 ID:"id-one", "id-two"。更新這份清單時,系統會取代先前接受的專案清單。
    • REJECTED_PROJECT_LIST:無法連線至這個網路附件的專案 ID。你可以加入多個 ID,格式如下:"id-one", "id-two"。更新這份清單時,系統會取代先前所有遭拒專案清單。
    • SUBNET_NAME:要與網路附件建立關聯的新子網路名稱。
    • DESCRIPTION:網路附加元件的更新說明。

刪除網路連結

如果網路連結沒有任何連線,即可刪除。如要刪除有連線的網路連結,生產者必須先刪除相關聯的 Private Service Connect 介面。

如果您刪除網路附件,然後建立同名的新附件,Google Cloud 會將這些網路附件視為兩個不同的資源。

主控台

  1. 前往 Google Cloud 控制台的「Private Service Connect」頁面:

    前往 Private Service Connect

  2. 按一下「網路連結」

  3. 選取網路連結,然後點選「Delete」(刪除)

  4. 再按一下 [刪除] 加以確認。

gcloud

使用 network-attachments delete 指令

gcloud compute network-attachments delete ATTACHMENT_NAME \
    --region=REGION

更改下列內容:

  • ATTACHMENT_NAME:要說明的網路附件名稱。
  • REGION:網路連結的區域

API

networkAttachments.delete 方法發出 DELETE 要求。

DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/networkAttachments/ATTACHMENT_NAME

更改下列內容:

  • PROJECT_ID:專案的 ID。
  • REGION:網路連結的區域。
  • ATTACHMENT_NAME:網路附件的名稱。

後續步驟