管理已發布的服務

本頁說明如何管理已發布的服務,包括處理已發布服務的存取要求、設定連線對帳,以及更新服務連結以參照新的目標服務。

每個服務連結都有連線偏好設定,可控制是否自動接受連線。

  • 自動接受所有連線。服務附件會自動接受來自任何消費者的所有連入連線要求。
  • 明確接受所選消費者的連線。只有當消費者位於服務連結的消費者接受清單中,服務連結才會接受連入連線要求。您可以依專案、虛擬私有雲網路或個別 Private Service Connect 端點指定消費者。您無法在同一個消費者接受或拒絕清單中加入不同類型的消費者。

無論是哪種連線偏好設定,如果機構政策封鎖連入連線,系統都會覆寫已接受的連線並拒絕連線。

建議您明確接受特定消費者的連結。如果您透過其他方式控管消費者存取權,並想啟用服務的寬鬆存取權,或許可以自動接受所有連線。

如要進一步瞭解如何發布服務,請參閱「發布服務」。

角色

下列 IAM 角色提供執行本指南中工作所需的權限。

管理已發布服務的存取權

如果您發布的服務需要明確核准,可以更新消費者清單來接受或拒絕連線。如要接受連線,請將要求連線的消費者專案、虛擬私有雲網路或個別 Private Service Connect 端點,新增至服務的消費者接受清單。如要明確拒絕連線,請以相同方式更新消費者拒絕清單。

無論消費者是否要求連線,您都能在消費者清單中新增專案或虛擬私有雲網路。您只能在連線要求後新增端點,因為端點的 URI 要等到端點建立後才會顯示。

消費者清單中的所有值都必須屬於相同類型。舉例來說,您無法根據用戶專案接受部分連線,並根據個別端點接受其他連線。如果將相同值同時加入接受清單和拒絕清單,系統會拒絕該消費者的連線要求。

根據預設,消費者清單的變更只會影響新的或待處理的連線。除非啟用連線協調功能,否則先前接受的連線不會終止。

控制台

如要透過明確核准管理服務的存取權,可以接受或拒絕現有的連線要求,也可以更新消費者接受和拒絕清單。這兩種方法會產生相同結果,並更新相同的消費者名單。

查看已發布服務的詳細資料

  1. 前往 Cloud de Confiance 控制台的「Private Service Connect」頁面。

    前往 Private Service Connect

  2. 按一下「Published services」(發布的服務) 分頁標籤。

  3. 按一下要管理的服務。

接受或拒絕連結要求

  • 如果服務設定為根據消費者專案接受連線,嘗試連線至這項服務的專案會列在「已連線的專案」部分。勾選一或多個專案旁的核取方塊,然後按一下「接受專案」或「拒絕專案」。
  • 如果服務已設為接受個別 Private Service Connect 端點,請按一下「等待核准」,查看嘗試連線至這項服務的端點。勾選一或多個端點旁的核取方塊,然後按一下「接受端點」或「拒絕端點」。
  • 如果服務設定為根據虛擬私有雲網路接受消費者,您只能更新消費者接受和拒絕清單來接受或拒絕連線,詳情請參閱下一節。

更新消費者接受和拒絕清單

  1. 按一下「編輯服務詳細資料」。
  2. 選用:選取新的連線偏好設定。
  3. 請完成下列適用步驟。如要新增多位消費者,請針對每位消費者重複這個步驟。

    • 如要「接受所選專案的連線」,請按一下「新增接受的專案」,然後輸入專案和連線限制。
    • 如果是「接受所選網路的連線」,請按一下「新增接受的網路」,然後輸入專案、虛擬私有雲網路和連線限制。
    • 如要「接受所選端點的連線」,請按一下「新增接受的端點」,然後輸入專案和端點的 ID。

      如要查看端點 ID,請查看已發布的服務,並在「等待核准」部分中查看「端點 ID」的值。

gcloud

  1. 如要查看要修改的服務附件現有和待處理的連線,請使用 gcloud compute service-attachments describe 指令。

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

    更改下列內容:

    • ATTACHMENT_NAME:服務附件的名稱。
    • REGION:服務連結的區域。

    輸出結果大致如下。如有任何待處理的消費者連結,系統會列出這些連結,並顯示 PENDING 狀態。您可以用來接受或拒絕個別端點的 Private Service Connect 端點 ID 型 URI,會顯示在「endpointWithId」欄位中。

    在本範例輸出內容中,專案 CONSUMER_PROJECT_1 位於接受清單中,因此 ENDPOINT_1 獲得接受,可以連線至服務。專案 CONSUMER_PROJECT_2 不在接受清單中,因此 ENDPOINT_2 處於待處理狀態。將 CONSUMER_PROJECT_2 新增至接受清單後,ENDPOINT_2 的狀態會變更為 ACCEPTED,端點即可連線至服務。

    connectedEndpoints:
    - consumerNetwork: https://www.googleapis.com/compute/v1/projects/CONSUMER_PROJECT_1/global/networks/CONSUMER_NETWORK_1
      endpoint: https://www.googleapis.com/compute/v1/projects/CONSUMER_PROJECT_1/regions/REGION_1/forwardingRules/ENDPOINT_1
      endpointWithId: https://www.googleapis.com/compute/v1/projects/CONSUMER_PROJECT_1/regions/REGION_1/forwardingRules/RESOURCE_ID_1
      pscConnectionId: 'ENDPOINT_1_ID'
      status: ACCEPTED
    - consumerNetwork: https://www.googleapis.com/compute/v1/projects/CONSUMER_PROJECT_2/global/networks/CONSUMER_NETWORK_2
      endpoint: https://www.googleapis.com/compute/v1/projects/CONSUMER_PROJECT_2/regions/REGION_2/forwardingRules/ENDPOINT_2
      endpointWithId: https://www.googleapis.com/compute/v1/projects/CONSUMER_PROJECT_2/regions/REGION_2/forwardingRules/RESOURCE_ID_2
      pscConnectionId: 'ENDPOINT_2_ID'
      status: PENDING
    connectionPreference: ACCEPT_MANUAL
    consumerAcceptLists:
    - connectionLimit: LIMIT_1
      projectIdOrNum: CONSUMER_PROJECT_1
    creationTimestamp: 'TIMESTAMP'
    description: 'DESCRIPTION'
    enableProxyProtocol: false
    fingerprint: FINGERPRINT
    id: 'ID'
    kind: compute#serviceAttachment
    name: NAME
    natSubnets:
    - https://www.googleapis.com/compute/v1/projects/PRODUCER_PROJECT/regions/REGION/subnetworks/PSC_SUBNET
    pscServiceAttachmentId:
      high: 'PSC_ATTACH_ID_HIGH'
      low: 'PSC_ATTACH_ID_LOW'
    region: https://www.googleapis.com/compute/v1/projects/PRODUCER_PROJECT/regions/REGION
    selfLink: https://www.googleapis.com/compute/v1/projects/projects/PRODUCER_PROJECT/regions/REGION/serviceAttachments/ATTACHMENT_NAME
    targetService: https://www.googleapis.com/compute/v1/projects/PRODUCER_PROJECT/regions/REGION/forwardingRules/PRODUCER_FWD_RULE
    
  2. 如要接受或拒絕消費者連結,請按照下列步驟操作。

    • 如要根據專案或虛擬私有雲網路接受或拒絕消費者,請使用 gcloud compute service-attachments update 指令。

      您可以指定 --consumer-accept-list 或 --consumer-reject-list,也可以同時指定兩者。您可以在 --consumer-accept-list 和 --consumer-reject-list 中指定多個值。您可以加入虛擬私有雲專案或網路,但不能同時加入專案和網路。

      gcloud compute service-attachments update ATTACHMENT_NAME \
          --region=REGION \
          --consumer-accept-list=ACCEPTED_PROJECT_OR_NETWORK_1=LIMIT_1,ACCEPTED_PROJECT_OR_NETWORK_2=LIMIT_2 \
          --consumer-reject-list=REJECTED_PROJECT_OR_NETWORK_1,REJECTED_PROJECT_OR_NETWORK_2
      

      更改下列內容:

      • ATTACHMENT_NAME:服務附件的名稱。

      • REGION:服務附件所在的區域。

      • ACCEPTED_PROJECT_OR_NETWORK_1 和 ACCEPTED_PROJECT_OR_NETWORK_2:要接受的專案 ID、專案名稱或網路網址。--consumer-accept-list 為選用項目,可包含一或多個專案或網路,但不能同時包含這兩種項目。

      • LIMIT_1 和 LIMIT_2:專案或網路的連線限制。連線限制是指可連線至這項服務的消費者端點數量。

      • REJECTED_PROJECT_OR_NETWORK_1 和 REJECTED_PROJECT_OR_NETWORK_2:要拒絕的專案 ID、專案名稱或網路網址。--consumer-reject-list 為選用項目,可包含一或多個專案或網路,但不能同時包含這兩種型別。

    • 如要接受或拒絕個別 Private Service Connect 端點,請使用 gcloud compute service-attachments update 指令。

      gcloud compute service-attachments update ATTACHMENT_NAME \
          --region=REGION \
          --consumer-accept-list=ACCEPTED_ENDPOINT_URI_1,ACCEPTED_ENDPOINT_URI_2 \
          --consumer-reject-list=REJECTED_ENDPOINT_URI_1,REJECTED_ENDPOINT_URI_2
      

      更改下列內容:

      • ACCEPTED_ENDPOINT_URI_1 和 ACCEPTED_ENDPOINT_URI_2:要接受的一或多個 Private Service Connect 端點的 ID 型 URI。如要尋找 Private Service Connect 端點的 ID 型 URI,請說明已連結的服務連結並檢查 endpointWithId 欄位,或說明 Private Service Connect 端點並檢查 selfLinkWithId 欄位。--consumer-accept-list 為選用項目。

        舉例來說,本節開頭範例輸出內容中,待處理 Private Service Connect 端點的 ID 型 URI 為 https://www.googleapis.com/compute/v1/projects/CONSUMER_PROJECT_2/regions/REGION_2/forwardingRules/RESOURCE_ID_2

      • REJECTED_ENDPOINT_URI_1 和 REJECTED_ENDPOINT_URI_2:要拒絕的一或多個 Private Service Connect 端點的 ID 型 URI。--consumer-reject-list 為選用項目。

API

  1. 如要說明要修改的服務附件,請將要求傳送至 serviceAttachments.get 方法。

    HTTP 方法和網址:

    GET https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/regions/REGION/serviceAttachments/ATTACHMENT_NAME
    

    更改下列內容:

    • PROJECT_ID:服務附件的專案。
    • REGION:服務連結的區域。
    • ATTACHMENT_NAME:服務附件的名稱。

    如有任何待處理的消費者連結,系統會列出這些連結,並顯示 PENDING 狀態。您可以使用 endpointWithId 欄位中顯示的 Private Service Connect 端點 ID 型 URI,接受或拒絕個別端點。

    請記下 fingerprint 值,以便在下一個步驟中使用。

  2. 如要接受或拒絕消費者專案或網路,請對 serviceAttachments.patch 方法發出要求。

    您可以依專案或虛擬私有雲網路接受及拒絕消費者,但無法在同一要求中同時納入專案和網路。

    • 如要根據專案接受或拒絕消費者,請傳送下列要求。

      HTTP 方法和網址:

      PATCH https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/regions/REGION/serviceAttachments/ATTACHMENT_NAME
      

      JSON 要求主體:

      {
        "consumerAcceptLists": [
          {
            "projectIdOrNum": "ACCEPTED_PROJECT_1",
            "connectionLimit": "LIMIT_1"
          },
          {
            "projectIdOrNum": "ACCEPTED_PROJECT_2",
            "connectionLimit": "LIMIT_2"
          }
        ],
        "consumerRejectLists": [
          "REJECTED_PROJECT_1",
          "REJECTED_PROJECT_2"
        ],
        "fingerprint" : "FINGERPRINT"
      }
      

      更改下列內容:

      • PROJECT_ID:服務附件的專案。
      • REGION:服務連結的區域。
      • ATTACHMENT_NAME:服務附件的名稱。
      • ACCEPTED_PROJECT_1 和 ACCEPTED_PROJECT_2:要接受的專案 ID 或編號。consumerAcceptList 為選用項目,可包含一或多個專案。
      • LIMIT_1 和 LIMIT_2:專案的連線限制。連線限制是指可連線至這項服務的消費者端點數量。
      • REJECTED_PROJECT_1 和 REJECTED_PROJECT_2:要拒絕的專案 ID 或編號。consumerRejectList 為選用項目,可包含一或多個專案。
      • FINGERPRINT:您在上一個步驟中找到的服務附件最新指紋。
    • 如要根據虛擬私有雲網路接受或拒絕消費者,請傳送下列要求。

      HTTP 方法和網址:

      PATCH https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/regions/REGION/serviceAttachments/ATTACHMENT_NAME
      

      JSON 要求主體:

      {
        "consumerAcceptLists": [
          {
            "networkUrl": "projects/ACCEPTED_PROJECT_ID_1/global/network/ACCEPTED_NETWORK_1",
            "connectionLimit": "LIMIT_1"
          },
          {
            "networkUrl": "projects/ACCEPTED_PROJECT_ID_2/global/network/ACCEPTED_NETWORK_2",
            "connectionLimit": "LIMIT_2"
          }
        ],
        "consumerRejectLists": [
          "projects/REJECTED_PROJECT_ID_1/global/networks/REJECTED_NETWORK_1",
          "projects/REJECTED_PROJECT_ID_2/global/network/REJECTED_NETWORK_2"
        ],
        "fingerprint": "FINGERPRINT"
      }
      

      更改下列內容:

      • ACCEPTED_PROJECT_ID_1 和 ACCEPTED_PROJECT_ID_2:您要接受的網路所屬上層專案 ID。consumerAcceptLists 為選用項目,可包含一或多個網路。
      • ACCEPTED_NETWORK_1 和 ACCEPTED_NETWORK_2:您要接受的網路名稱。
      • LIMIT_1 和 LIMIT_2:網路的連線限制。連線限制是指可連線至這項服務的消費者端點數量。
      • REJECTED_PROJECT_ID_1 和 REJECTED_PROJECT_ID_2:要拒絕的網路所屬上層專案 ID。consumerRejectLists 為選用項目,可包含一或多個網路。
      • REJECTED_NETWORK_1 和 REJECTED_NETWORK_2:要拒絕的聯播網名稱。
    • 如要根據個別 Private Service Connect 端點接受或拒絕消費者,請傳送下列要求。

      HTTP 方法和網址:

      PATCH https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/regions/REGION/serviceAttachments/ATTACHMENT_NAME
      

      JSON 要求主體:

      {
        "consumerAcceptLists": [
          {
            "endpointUrl": "ACCEPTED_ENDPOINT_URI_1"
          },
          {
            "endpointUrl": "ACCEPTED_ENDPOINT_URI_2"
          }
        ],
        "consumerRejectLists": [
          "REJECTED_ENDPOINT_URI_1",
          "REJECTED_ENDPOINT_URI_2"
        ],
        "fingerprint": "FINGERPRINT"
      }
      

      更改下列內容:

      • ACCEPTED_ENDPOINT_URI_1 和 ACCEPTED_ENDPOINT_URI_2:要接受的一或多個 Private Service Connect 端點的 ID 型 URI。如要找出 Private Service Connect 端點的 ID 型 URI,請說明已連線的服務連結並檢查 endpointWithId 欄位,或說明端點並檢查 selfLinkWithId 欄位。以 ID 為基礎的 URI 範例如下:https://www.googleapis.com/compute/v1/projects/consumer-project/regions/us-central1/forwardingRules/1234567890

        這份清單為選用項目。

      • REJECTED_ENDPOINT_URI_1 和 REJECTED_ENDPOINT_URI_2:要拒絕的一或多個 Private Service Connect 端點的 ID 型 URI。這份清單為選用項目。

變更已發布服務的連線偏好設定

您可以為已發布的服務切換自動和明確的消費者接受設定。這項變更對現有連線的影響,取決於服務附件是否已啟用連線調節。

如果停用連線協調功能,變更連線偏好設定不會影響現有的 ACCEPTED 或 REJECTED 連線:

  • 從自動接受切換為明確接受後,新連線必須位於消費者接受清單中,才能ACCEPTED。
  • 從明確接受切換為自動接受後,所有現有的 PENDING 連線都會自動 ACCEPTED。

啟用連線協調功能後,系統會根據新的連線偏好重新評估所有現有連線:

  • 從自動接受切換為明確接受後,不在消費者接受清單中的現有消費者連線會變更為 PENDING,並終止這些連線。
  • 從明確接受切換為自動接受時,所有現有的PENDING和REJECTED連線都會變更為ACCEPTED。

如要進一步瞭解如何更新服務的消費者接受清單,請參閱「管理已發布服務的存取要求」。

控制台

  1. 前往 Cloud de Confiance 控制台的「Private Service Connect」頁面。

    前往 Private Service Connect

  2. 按一下「Published services」(發布的服務) 分頁標籤。

  3. 點選要更新的服務,然後按一下「編輯服務詳細資料」。

  4. 選取要用於這項服務的新連線偏好設定。

  5. 選用:如果改為使用明確接受機制,您可以立即將消費者新增至接受名單,也可以稍後再新增。如要接受消費者,請執行下列任一操作。您可以針對要新增的每個消費者重複這個步驟。

    • 如要「接受所選專案的連線」,請按一下「新增接受的專案」,然後輸入專案和連線限制。
    • 如果是「接受所選網路的連線」,請按一下「新增接受的網路」,然後輸入專案、虛擬私有雲網路和連線限制。
    • 如要「接受所選端點的連線」,請按一下「新增接受的端點」,然後輸入專案和端點的 ID。
  6. 按一下 [儲存]。

gcloud

  • 如要將服務連結的連線偏好設定從 ACCEPT_AUTOMATIC 變更為 ACCEPT_MANUAL,請使用 gcloud compute service-attachments update 指令。

    您可以使用 --consumer-accept-list 和 --consumer-reject-list,控管哪些專案可以連線至服務。 變更連線偏好設定時,您可以設定接受和拒絕清單,或稍後更新清單。

    gcloud compute service-attachments update ATTACHMENT_NAME \
        --region=REGION \
        --connection-preference=ACCEPT_MANUAL \
        [ --consumer-accept-list=ACCEPTED_PROJECT_OR_NETWORK_1=LIMIT_1,ACCEPTED_PROJECT_OR_NETWORK_2=LIMIT_2] \
        [ --consumer-reject-list=REJECTED_PROJECT_OR_NETWORK_1,REJECTED_PROJECT_OR_NETWORK_2 ]
    

    更改下列內容:

    • ATTACHMENT_NAME:服務附件的名稱。

    • REGION:服務附件所在的區域。

    • ACCEPTED_PROJECT_OR_NETWORK_1 和 ACCEPTED_PROJECT_OR_NETWORK_2:要接受的專案 ID、專案名稱或網路網址。--consumer-accept-list 為選用項目,可包含一或多個專案或網路,但不能同時包含這兩種型別。

    • LIMIT_1 和 LIMIT_2:專案的連線限制。連線限制是指可連線至這項服務的消費者端點數量。

    • REJECTED_PROJECT_OR_NETWORK_1 和 REJECTED_PROJECT_OR_NETWORK_2:要拒絕的專案 ID、專案名稱或網路網址。--consumer-reject-list 為選用項目,可包含一或多個專案或網路,但不能同時包含這兩種型別。

  • 如要將服務附件的連線偏好設定從 ACCEPT_MANUAL 變更為 ACCEPT_AUTOMATIC,請使用下列指令。

    如果接受清單或拒絕清單中有值,請在變更連線偏好設定 ("") 時,將這些值設為空白。

    gcloud compute service-attachments update ATTACHMENT_NAME \
        --region=REGION \
        --connection-preference=ACCEPT_AUTOMATIC \
        --consumer-accept-list="" \
        --consumer-reject-list=""
    

    更改下列內容:

    • ATTACHMENT_NAME:服務附件的名稱。

    • REGION:服務附件所在的區域。

API

  1. 如要取得服務附件的 fingerprint,請向 serviceAttachments.get 方法傳送要求。

    HTTP 方法和網址:

    GET https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/regions/REGION/serviceAttachments/ATTACHMENT_NAME
    

    更改下列內容:

    • PROJECT_ID:服務附件的專案。
    • REGION:服務連結的區域。
    • ATTACHMENT_NAME:服務附件的名稱。

    請記下 fingerprint 值,以便在下一個步驟中使用。

  2. 如要變更服務連結的連線偏好設定,請向 serviceAttachments.patch 方法傳送要求。

    • 如要將連線偏好設定從 ACCEPT_AUTOMATIC 變更為 ACCEPT_MANUAL,並根據專案更新消費者接受/拒絕清單,請提出下列要求。

      HTTP 方法和網址:

      PATCH https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/regions/REGION/serviceAttachments/ATTACHMENT_NAME
      

      JSON 要求主體:

      {
        "connectionPreference": "ACCEPT_MANUAL",
        "consumerAcceptLists": [
          {
            "projectIdOrNum": "ACCEPTED_PROJECT_1"
            "connectionLimit": "LIMIT_1",
          },
          {
            "projectIdOrNum": "ACCEPTED_PROJECT_2"
            "connectionLimit": "LIMIT_2",
          }
        ],
        "consumerRejectLists": [
          "REJECTED_PROJECT_1",
          "REJECTED_PROJECT_2",
        ],
        "fingerprint" : "FINGERPRINT"
      }
      

      更改下列內容:

      • PROJECT_ID:服務附件的專案。
      • REGION:服務連結的區域。
      • ATTACHMENT_NAME:服務附件的名稱。
      • ACCEPTED_PROJECT_1 和ACCEPTED_PROJECT_2:要接受的專案 ID 或編號。consumerAcceptList 為選用項目,可包含一或多個專案。
      • LIMIT_1 和 LIMIT_2:專案的連線限制。連線限制是指可連線至這項服務的消費者端點數量。
      • REJECTED_PROJECT_1 和 REJECTED_PROJECT_2:要拒絕的專案 ID 或編號。consumerRejectList 為選用項目,可包含一或多個專案。
      • FINGERPRINT:您在步驟 1 中找到的服務附件最新指紋。
    • 如要將連線偏好設定從 ACCEPT_AUTOMATIC 變更為 ACCEPT_MANUAL,並根據虛擬私有雲網路更新消費者接受/拒絕清單,請提出下列要求。

      HTTP 方法和網址:

      PATCH https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/regions/REGION/serviceAttachments/ATTACHMENT_NAME
      

      JSON 要求主體:

      {
        "connectionPreference": "ACCEPT_MANUAL",
        "consumerAcceptLists": [
          {
            "networkUrl": "projects/ACCEPTED_PROJECT_ID_1/global/networks/ACCEPTED_NETWORK_1",
            "connectionLimit": "LIMIT_1"
          },
          {
            "networkUrl": "projects/ACCEPTED_PROJECT_ID_2/global/networks/ACCEPTED_NETWORK_2",
            "connectionLimit": "LIMIT_2"
          }
        ],
        "consumerRejectLists": [
          "projects/REJECTED_PROJECT_ID_1/global/networks/REJECTED_NETWORK_1",
          "projects/REJECTED_PROJECT_ID_2/global/network/REJECTED_NETWORK_2"
        ],
        "fingerprint" : "FINGERPRINT"
      }
      

      更改下列內容:

      • ACCEPTED_PROJECT_ID_1 和 ACCEPTED_PROJECT_ID_2:您要接受的網路所屬上層專案 ID。consumerAcceptLists 為選用項目,可包含一或多個網路。
      • ACCEPTED_NETWORK_1 和 ACCEPTED_NETWORK_2:您要接受的網路名稱。
      • LIMIT_1 和 LIMIT_2:網路的連線限制。連線限制是指可連線至這項服務的消費者端點數量。
      • REJECTED_PROJECT_ID_1 和 REJECTED_PROJECT_ID_2:要拒絕的網路所屬上層專案 ID。consumerRejectLists 為選用項目,可包含一或多個網路。
      • REJECTED_NETWORK_1 和 REJECTED_NETWORK_2:要拒絕的網路名稱。
      • FINGERPRINT:您在步驟 1 中找到的服務附件最新指紋。
  • 如要將服務附件的連線偏好設定從 ACCEPT_MANUAL 變更為 ACCEPT_AUTOMATIC,請提出下列要求。

    如果 consumerAcceptLists 或 consumerRejectLists 欄位指定任何消費者,請在將連線偏好設定變更為 ACCEPT_AUTOMATIC 時,將這些欄位設為空白。

    HTTP 方法和網址:

    PATCH https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/regions/REGION/serviceAttachments/ATTACHMENT_NAME
    

    JSON 要求主體:

    {
      "connectionPreference": "ACCEPT_AUTOMATIC",
      "consumerAcceptLists": [ ],
      "consumerRejectLists": [ ],
      "fingerprint" : "FINGERPRINT"
    }
    

    更改下列內容:

    • PROJECT_ID:服務附件的專案。

    • REGION:服務連結的區域。

    • ATTACHMENT_NAME:服務附件的名稱。

    • FINGERPRINT:您在步驟 1 中找到的服務附件最新指紋。

從消費者清單中移除過時的端點

如果消費者接受和拒絕清單設定為使用個別端點,消費者刪除對應端點後,清單中仍可能保留值。為簡化消費者名單管理作業,您可以使用 gcloud compute service-attachments update 指令,移除不再存在的任何端點值。這項功能僅支援 Google Cloud CLI。

gcloud

gcloud compute service-attachments update ATTACHMENT_NAME \
    --region=REGION \
    --remove-obsolete-endpoint-accept-reject-entries

更改下列內容:

  • ATTACHMENT_NAME:要更新的服務附件名稱。
  • REGION:服務連結的區域。

設定連線協調功能

您可以為現有服務附件啟用或停用連線協調。

控制台

  1. 前往 Cloud de Confiance 控制台的「Private Service Connect」頁面。

    前往 Private Service Connect

  2. 按一下「Published services」(發布的服務) 分頁標籤。

  3. 點選要更新的服務,然後按一下「編輯服務詳細資料」。

  4. 選取或取消選取「啟用連線協調」核取方塊,然後按一下「儲存」。

gcloud

  • 如要啟用連線協調功能,請使用 service-attachments update 指令。

    gcloud compute service-attachments update ATTACHMENT_NAME \
        --region=REGION \
        --reconcile-connections
    

    更改下列內容:

    • ATTACHMENT_NAME:服務附件的名稱。
    • REGION:服務連結的區域。
  • 如要停用連線協調功能,請使用下列指令:

    gcloud compute service-attachments update ATTACHMENT_NAME \
        --region=REGION \
        --no-reconcile-connections
    

API

  1. 如要取得服務附件的 fingerprint,請向 serviceAttachments.get 方法傳送要求。

    HTTP 方法和網址:

    GET https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/regions/REGION/serviceAttachments/ATTACHMENT_NAME
    

    更改下列內容:

    • PROJECT_ID:服務附件的專案。
    • REGION:服務連結的區域。
    • ATTACHMENT_NAME:服務附件的名稱。

    請記下 fingerprint 值,以便在下一個步驟中使用。

  2. 向 serviceAttachments.patch 方法傳送要求。

    HTTP 方法和網址:

    PATCH https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/regions/REGION/serviceAttachments/ATTACHMENT_NAME
    

    JSON 要求主體:

    {
      "reconcileConnections": RECONCILIATION,
      "fingerprint": "FINGERPRINT"
    }
    

    更改下列內容:

    • PROJECT_ID:服務附件的專案。
    • REGION:服務連結的區域。
    • ATTACHMENT_NAME:服務附件的名稱。
    • RECONCILIATION:是否啟用連線對帳。選項為 true 或 false。
    • FINGERPRINT:您在上一個步驟中找到的服務附件最新指紋。

在已發布的服務中新增或移除子網路

您可以編輯已發布的服務,新增 Private Service Connect 子網路。

舉例來說,您可能需要為現有服務提供更多 IP 位址。如要新增更多地址,請採取下列其中一種做法:

同樣地,您也可以編輯已發布的服務,移除 Private Service Connect 子網路。不過,如果子網路的任何 IP 位址用於 Private Service Connect 的 SNAT,系統就會無法移除子網路。

如果變更子網路設定,請更新防火牆規則,允許來自新子網路的要求連線至後端 VM。

控制台

  1. 前往 Cloud de Confiance 控制台的「Private Service Connect」頁面。

    前往 Private Service Connect

  2. 按一下「Published services」(發布的服務) 分頁標籤。

  3. 點選要更新的服務,然後按一下「編輯服務詳細資料」。

  4. 修改這項服務使用的子網路。

    如要新增子網路,可以按照以下步驟操作:

    1. 按一下「保留新的子網路」。
    2. 輸入子網路的「名稱」和「說明」 (選填)。
    3. 選取子網路的「區域」。
    4. 輸入要用於子網路的「IP 範圍」,然後按一下「新增」。
  5. 按一下 [儲存]。

gcloud

如要更新用於這項服務連結的 Private Service Connect 子網路,請使用 gcloud compute service-attachments update 指令。

gcloud compute service-attachments update ATTACHMENT_NAME \
    --region=REGION \
    --nat-subnets=PSC_SUBNET_LIST

更改下列內容:

  • ATTACHMENT_NAME:服務附件的名稱。

  • REGION:服務附件所在的區域。

  • PSC_SUBNET_LIST:以半形逗號分隔的清單,列出一或多個要用於這項服務附件的子網路。

API

  1. 如要取得服務附件的 fingerprint,請向 serviceAttachments.get 方法傳送要求。

    HTTP 方法和網址:

    GET https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/regions/REGION/serviceAttachments/ATTACHMENT_NAME
    

    更改下列內容:

    • PROJECT_ID:服務附件的專案。
    • REGION:服務連結的區域。
    • ATTACHMENT_NAME:服務附件的名稱。

    請記下 fingerprint 值,以便在下一個步驟中使用。

  2. 如要更新用於這個服務連結的 Private Service Connect 子網路,請傳送要求至 serviceAttachments.patch 方法。

    HTTP 方法和網址:

    PATCH https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/regions/REGION/serviceAttachments/ATTACHMENT_NAME
    

    JSON 要求主體:

    {
      "natSubnets": [
      "PSC_SUBNET1_URI",
      "PSC_SUBNET2_URI"
      ],
      "fingerprint": "FINGERPRINT"
    }
    

    更改下列內容:

    • PROJECT_ID:服務附件的專案。

    • REGION:服務連結的區域。

    • ATTACHMENT_NAME:服務附件的名稱。

    • PSC_SUBNET1_URI 和 PSC_SUBNET2_URI: 要搭配這個服務連結使用的子網路 URI。您可以指定一或多個子網路。

    • FINGERPRINT:您在上一個步驟中找到的服務附件最新指紋。

更新每個端點的 NAT IP 位址數量

您可以更新服務連結,將每個消費者端點或後端分配的 NAT IP 位址數量從 1 增加到 2。這麼做不會影響已分配的 NAT IP 位址。您無法減少 NAT IP 位址數量。

如果生產者後端 VM 有足夠的 vCPU,調高這個值可以增加每個端點或後端的 IPv4 連線數量上限。詳情請參閱「連線數量上限」。

服務連結的 NAT 子網路必須有足夠容量,才能為每個已接受的端點 (包括傳播的端點連線) 和後端分配額外的 IP 位址。

如果 NAT 子網路沒有足夠的可用 IP 位址,更新就會失敗,並顯示下列錯誤訊息:

Insufficient IPv4 capacity on NAT subnetworks for the requested Service Attachment update.

在這種情況下,您必須新增或擴充 NAT 子網路,才能重試更新。

控制台

  1. 前往 Cloud de Confiance 控制台的「Private Service Connect」頁面。

    前往 Private Service Connect

  2. 按一下「Published services」(發布的服務) 分頁標籤。

  3. 點選要更新的服務,然後按一下「編輯服務詳細資料」。

  4. 按一下「每個 PSC 端點分配的 IP 數量」,然後選取「2」。

  5. 按一下 [儲存]。

gcloud

如要增加現有服務連結的每個端點 NAT IP 位址數量,請使用 gcloud compute service-attachments update 指令。

gcloud compute service-attachments update ATTACHMENT_NAME \
    --region=REGION \
    --nat-ips-per-endpoint=2

更改下列內容:

  • ATTACHMENT_NAME:要更新的服務附件名稱。
  • REGION:服務連結的區域。

API

  1. 如要取得服務附件的 fingerprint,請向 serviceAttachments.get 方法傳送要求。

    GET https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/regions/REGION/serviceAttachments/ATTACHMENT_NAME
    

    更改下列內容:

    • PROJECT_ID:服務附件的專案 ID。
    • REGION:服務連結的區域。
    • ATTACHMENT_NAME:服務附件的名稱。
  2. 向 serviceAttachments.patch 方法傳送 PATCH 要求。

    PATCH https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/regions/REGION/serviceAttachments/ATTACHMENT_NAME
    {
      "natIpsPerEndpoint": 2,
      "fingerprint": "FINGERPRINT"
    }
    

    將 FINGERPRINT 替換成您在上一個步驟中找到的服務連結最新指紋。

更新目標服務

對於支援的設定,您可以更新服務附件,以指定其他服務。如要瞭解支援的設定和限制,請參閱「服務可變動性」。

更新目標服務時,流量會短暫中斷。不過,系統不會自動通知消費者服務中斷,更新目標服務也不會影響已連線消費者的連線狀態。

準備更新

以下各節的步驟為選用步驟。在大多數情況下,您可以跳至「更新服務附件」一節,除非您想執行下列操作:

  • 如要明確向消費者發出停機信號,請將連線狀態更新為 REJECTED,並完成「向消費者發出停機信號」一節中的步驟。
  • 如要建立測試執行個體,以便在服務連線恢復時進行驗證,請完成「準備測試消費者」一節中的步驟。

在更新期間向消費者發出停機信號

如要明確告知消費者這項服務無法使用,請完成下列選用步驟:

  1. 確認服務連結已啟用連線協調功能。
  2. 將接受清單中的所有消費者新增至拒絕清單。這會將連線狀態變更為 REJECTED。
  3. 更新完成後,請從拒絕清單中移除消費者,將連線狀態轉回 ACCEPTED。

準備測試消費者

如要確認服務連線能力何時恢復,您可以選擇從測試執行個體傳送探測封包至服務。如要設定測試,請按照下列步驟操作:

  1. 在專案中建立測試虛擬私有雲網路。
  2. 在測試虛擬私有雲網路中,執行下列操作:
  3. 請準備下列其中一種方式來測試連線:

更新服務連結

如要更新服務附件的目標服務,請按照下列步驟操作。

如要更新為或更新自內部通訊協定轉送目標服務,請務必使用 gcloud CLI 或傳送 API 要求。

控制台

  1. 前往 Cloud de Confiance 控制台的「Private Service Connect」頁面。

    前往 Private Service Connect

  2. 按一下「Published services」(發布的服務) 分頁標籤。

  3. 按一下要更新的服務。

  4. 按一下「編輯服務詳細資料」。

  5. 選取新目標服務的負載平衡器類型。

  6. 選取新目標服務的轉送規則。

  7. 按一下 [儲存]。

gcloud

使用 gcloud compute service-attachments update 指令。

gcloud compute service-attachments update ATTACHMENT_NAME \
    --region=REGION \
    --target-service=TARGET_SERVICE

更改下列內容:

  • ATTACHMENT_NAME:要更新的服務附件名稱。
  • REGION:服務連結的區域。
  • TARGET_SERVICE:新目標服務的 URI,格式如下: projects/PROJECT_ID/regions/RULE_REGION/forwardingRules/RULE_NAME

API

  1. 如要取得服務附件的 fingerprint,請向 serviceAttachments.get 方法傳送要求。

    HTTP 方法和網址:

    GET https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/regions/REGION/serviceAttachments/ATTACHMENT_NAME
    

    更改下列內容:

    • PROJECT_ID:服務附件的專案。
    • REGION:服務連結的區域。
    • ATTACHMENT_NAME:服務附件的名稱。

    請記下 fingerprint 值,以便在下一個步驟中使用。

  2. 向 serviceAttachments.patch 方法傳送要求。

    HTTP 方法和網址:

    PATCH https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/regions/REGION/serviceAttachments/ATTACHMENT_NAME
    

    JSON 要求主體:

    {
      "targetService": "TARGET_SERVICE",
      "fingerprint": "FINGERPRINT"
    }
    

    更改下列內容:

    • TARGET_SERVICE:新目標服務的 URI,格式如下: projects/PROJECT_ID/regions/RULE_REGION/forwardingRules/RULE_NAME
    • FINGERPRINT:您在上一個步驟中找到的服務附件最新指紋。

確認更新並還原存取權

如果您已建立測試虛擬私有雲網路和執行個體,請確認更新完成且服務可用。這個步驟可以省略。 執行下列其中一個步驟:

  • 如果您使用 Connectivity Tests 建立測試,請重新執行測試。如果測試的即時資料層分析顯示所有封包都已成功傳送,更新作業即完成。
  • 從測試執行個體手動傳送探測封包至目標服務。 執行個體成功收到回應後,更新作業即完成。

連線恢復後,請按照下列步驟操作:

  1. 如果已將消費者加入拒絕名單,請從拒絕名單中移除他們,表示服務可供使用。
  2. 如果您建立資源來驗證更新是否完成,請按照下列步驟刪除資源,以免產生不必要的費用:
    1. 刪除測試執行個體
    2. 刪除測試 Private Service Connect 端點
    3. 刪除測試虛擬私有雲網路