使用使用者註冊的 Private Service Connect 連線設定多個虛擬私有雲網路

本頁面說明如何為多個虛擬私有雲 (VPC) 網路和新的 Memorystore for Valkey 執行個體設定連線。如要這樣做,請按照下列步驟操作:

  • 在消費者網路中建立 Private Service Connect 端點。

  • 指定 Memorystore 執行個體的服務附件。

  • 將元件註冊至執行個體。

如要瞭解如何為已擁有一些自動註冊的 Private Service Connect 連線的執行個體設定多個虛擬私人雲端網路,請參閱「為使用自動註冊連線的執行個體設定多個虛擬私人雲端網路」。

如要進一步瞭解如何設定多個虛擬私有雲網路,請參閱「關於多個虛擬私有雲網路」。

多虛擬私有雲網路架構。它有兩個客戶虛擬私有雲網路,分別位於兩個專案中,並連結至 Private Service Connect 連線,而該連線則連結至 Memorystore 服務附件。

主要步驟摘要

本節將簡要說明本教學課程中 Private Service Connect 連線的設定步驟。首先,請完成「事前準備」一節中的步驟。

重點步驟

  1. 步驟 1:建立執行個體
  2. 步驟 2:記下服務附件路徑
  3. 步驟 3:為第一個虛擬私有雲網路設定及註冊 Private Service Connect 連線
  4. 步驟 4:為第二個虛擬私有雲網路設定及註冊 Private Service Connect 連線
  5. 步驟 5:設定用戶端連線

此外,您還可以:

事前準備

開始之前,請確認您具備下列 IAM 角色和 Google Cloud 資源。

必要的 IAM 角色

資源 ID 範例 資源類型
roles/memorystore.admin 提供 Memorystore for Valkey 執行個體的完整控制權,並在執行個體的生命週期中控管該執行個體。
roles/servicedirectory.editor 授予您編輯 Service Directory 資源的權限。您必須具備這個角色,才能建立 Private Service Connect 端點。
roles/compute.networkAdmin 授予對啟動與 Memorystore 執行個體連線的虛擬私有雲網路的完整控制權。您可以建立及管理 IP 位址、防火牆規則和 Private Service Connect 端點。您必須具備這個角色,才能建立 Private Service Connect 端點。

如果您使用 Private Service Connect 從多個 VPC 網路連線至 Memorystore 執行個體,每個網路可能都有自己的管理員。

先決條件資源

開始本教學課程前,您必須建立下列資源。建議您使用下列 ID 和位置建立資源,但您也可以自行選擇 ID 和位置。在本教學課程中,您將使用下列資源,在 VPC 網路 1 中設定兩個 Private Service Connect 連線:

資源 ID 範例 資源類型 完整路徑範例 說明
my-project-1 Google Cloud 專案 n/a 您的 Memorystore 執行個體位於這個專案中
my-network-1 虛擬私有雲網路 projects/my-project-1/global/networks/my-network-1 在本教學課程中,您將在這個網路中設定 2 個 Private Service Connect 連線
my-subnet-1 虛擬私有雲子網路 projects/my-project-1/regions/us-central1/subnetworks/my-subnet-1 在本教學課程中,您將在這個子網路中保留 2 個 IP 位址

在本教學課程中,您將使用下列資源,在 VPC 網路 2 中建立兩個 Private Service Connect 連線:

資源 ID 範例 資源類型 完整路徑範例 說明
my-project-2 Google Cloud 專案 n/a 在本教學課程中,您會在這個專案中建立第二個網路和第二個子網路。不過,如果您願意,第二個網路和子網路可以與第一個網路位於同一專案。
my-network-2 虛擬私有雲網路 projects/my-project-2/global/networks/my-network-2 在本教學課程中,您將在這個網路中建立 2 個 Private Service Connect 端點
my-subnet-2 虛擬私有雲子網路 projects/my-project-2/regions/us-central1/subnetworks/my-subnet-2 在本教學課程中,您將在這個子網路中保留 2 個 IP 位址

啟用 API

啟用下列 API,管理 Compute Engine 網路、Memorystore for Valkey 和 Private Service Connect 資源。

gcloud

如要在專案 1 和專案 2 中啟用 API,請執行下列指令:

gcloud services enable --project=PROJECT_1_ID compute.googleapis.com
gcloud services enable --project=PROJECT_2_ID compute.googleapis.com
gcloud services enable --project=PROJECT_1_ID memorystore.googleapis.com
gcloud services enable --project=PROJECT_2_ID memorystore.googleapis.com
gcloud services enable --project=PROJECT_1_ID servicedirectory.googleapis.com
gcloud services enable --project=PROJECT_2_ID servicedirectory.googleapis.com

步驟 1:建立執行個體

本指南說明如何為沒有自動註冊 Private Service Connect 連線的 Memorystore 執行個體設定連線。您可以設定服務連線政策,但如果要讓使用者註冊 Private Service Connect 連線,則不需要設定服務連線政策。

如要避免自動建立及註冊 Private Service Connect 連線,請在執行建立指令時不指定網路,如以下範例所示。

gcloud

如要建立執行個體,但不自動建立任何 Private Service Connect 連線,請執行 gcloud memorystore instances create 指令,但不要使用 --network--endpoints 參數,如下所示:

gcloud memorystore instances create INSTANCE_ID \
--location=REGION_ID \
--project=PROJECT_1_ID \
--replica-count=REPLICA_COUNT \
--shard-count=SHARD_COUNT

更改下列內容:

  • INSTANCE_ID 是您要建立的 Memorystore for Valkey 執行個體 ID。執行個體 ID 的長度必須介於 1 至 63 個字元之間,且只能使用小寫英文字母、數字或連字號。開頭必須是小寫英文字母,結尾則須為小寫英文字母或數字。

  • REGION_ID 是您要放置執行個體的區域。

  • PROJECT_1_ID 是專案 1 的 ID。這是 Memorystore 執行個體所在的專案。

  • REPLICA_COUNT 是您選擇的備用資源數量 (每個資料分割)。可接受的值為 012

  • SHARD_COUNT 會決定執行個體中的分割區數量。分割區數量會決定儲存執行個體資料的總記憶體容量。如要進一步瞭解執行個體規格,請參閱「執行個體和節點規格」。

例如:

gcloud memorystore instances create my-instance \
--location=us-central1 \
--replica-count=2 \
--shard-count=8

步驟 2:記下服務附件路徑

建立 Memorystore 執行個體後,請記下 Memorystore 執行個體的兩個服務附件 URI。您可以使用這些服務連結 URI 設定 Private Service Connect 連線。

gcloud

如要查看已啟用 Private Service Connect 的執行個體摘要資訊,請找出 pscServiceAttachments 欄位。這個欄位會顯示兩個 URI,指向執行個體的服務附件。如要查看這項資訊,請使用 gcloud memorystore instances describe 指令:

gcloud memorystore instances describe INSTANCE_ID --project=PROJECT_1_ID --location=REGION_ID

更改下列內容:

  • INSTANCE_ID 是 Memorystore 執行個體的名稱。
  • PROJECT_1_ID 是包含 Memorystore 執行個體的專案 1 ID。
  • REGION_ID 是執行個體所在地區的 ID。

以下是這個指令的輸出內容範例:

gcloud memorystore instances describe my-instance \
--project=my-project-1 --location=us-central1

...

pscAttachmentDetails:
- connectionType: CONNECTION_TYPE_DISCOVERY
  serviceAttachment: projects/1048073346231/regions/us-central1/serviceAttachments/gcp-memorystore-auto-8d7d48ef-3ca3-4d-psc-sa
- serviceAttachment: projects/1048073346231/regions/us-central1/serviceAttachments/gcp-memorystore-auto-8d7d48ef-3ca3-4d-psc-sa-2

步驟 3:為第一個虛擬私有雲網路設定及註冊連線

本節說明如何設定第一個虛擬私人雲端網路所需的兩個 Private Service Connect 連線。您必須針對要設定連線的每個 VPC 重複執行這項程序。舉例來說,您會在本教學課程後續的部分看到這些步驟重複出現,但這次是針對第二個虛擬私有雲網路所需的新連線。

為網路 1 建立 Private Service Connect 端點

本節說明在 Network 1 中建立 2 個 Private Service Connect 端點時,需要採取的動作。

為網路 1 保留 IP 位址

接下來,請在網路 1 中保留兩個 IP 位址。

保留 IP 位址 1

gcloud

如要保留 IP 位址 1,請執行 gcloud compute addresses create 指令:

gcloud compute addresses create IP_ADDRESS_1_ID \
--project=PROJECT_1_ID \
--addresses=IP_ADDRESS_1 \
--region=REGION_ID \
--subnet=projects/PROJECT_1_ID/regions/REGION_ID/subnetworks/SUBNET_1_ID \
--purpose=GCE_ENDPOINT

更改下列內容:

  • IP_ADDRESS_1_ID 是您為 IP 位址指定的 ID。
  • PROJECT_1_ID 是專案 1 的 ID。這是 Memorystore 執行個體所在的專案。
  • IP_ADDRESS_1 是您在必要資源中保留的 SUBNET_1_ID 範圍內所選擇的 IP 位址。
  • REGION_ID 是 Memorystore 執行個體所在的地區。
  • SUBNET_1_ID 是專案 1 中網路 1 上保留的子網路 ID,屬於必要條件資源的一部分。

例如:

gcloud compute addresses create my-ip-address-1 \
--project=my-project-1 \
--addresses=10.2.5.9 \
--region=us-central1 \
--subnet=projects/my-project-1/regions/us-central1/subnetworks/my-subnet-1 \
--purpose=GCE_ENDPOINT
保留 IP 位址 2

gcloud

如要預留 IP 位址 2,請執行 gcloud compute addresses create 指令:

gcloud compute addresses create IP_ADDRESS_2_ID \
--project=PROJECT_1_ID \
--addresses=IP_ADDRESS_2 \
--region=REGION_ID \
--subnet=projects/PROJECT_1_ID/regions/REGION_ID/subnetworks/SUBNET_1_ID \
--purpose=GCE_ENDPOINT

更改下列內容:

  • IP_ADDRESS_2_ID 是您為 IP 位址指定的 ID。
  • PROJECT_1_ID 是專案 1 的 ID。這是 Memorystore 執行個體所在的專案。
  • IP_ADDRESS_2 是您在必要資源中保留的 SUBNET_1_ID 範圍內所選擇的 IP 位址。
  • REGION_ID 是 Memorystore 執行個體所在的地區。
  • SUBNET_1_ID 是專案 1 中網路 1 上保留的子網路 ID,屬於必要條件資源的一部分。

新增網路 1 的轉送規則

接下來,請建立轉送規則,將 IP 位址連結至 Memorystore 執行個體的服務附件。

為 IP 1 新增轉送規則 1

gcloud

如要為 IP 1 新增轉送規則,請執行 gcloud compute forwarding-rules create 指令:

gcloud compute forwarding-rules create FORWARDING_RULE_1_NAME \
--address=IP_ADDRESS_1_ID \
--network=projects/PROJECT_1_ID/global/networks/NETWORK_1_ID \
--region=REGION_ID \
--target-service-attachment=SERVICE_ATTACHMENT_1 \
--project=PROJECT_1_ID \
--allow-psc-global-access

更改下列內容:

  • FORWARDING_RULE_1_NAME 是您要建立的轉送規則名稱。
  • IP_ADDRESS_1_ID 是您在「保留 IP 位址」部分保留的 IP 位址 ID。
  • NETWORK_1_ID 是第一個網路的 ID。
  • REGION_ID 是 Memorystore 執行個體所在的地區。
  • SERVICE_ATTACHMENT_1 是您在「注意服務連結路徑」一節中,在 CONNECTION_TYPE_DISCOVERY 欄位後方列出的服務連結。
  • PROJECT_1_ID 是專案 1 的 ID。這是 Memorystore 執行個體所在的專案。

例如:

gcloud compute forwarding-rules create my-forwarding-rule-1 \
--address=my-ip-address-1 \
--network=projects/my-project-1/global/networks/my-network-1 \
--region=us-central1 \
--target-service-attachment=projects/1048073346231/regions/us-central1/serviceAttachments/gcp-memorystore-auto-a0583920-edef-42-psc-sa \
--project=my-project-1 \
--allow-psc-global-access
為 IP 2 新增轉送規則 2

gcloud

如要為 IP 2 新增轉送規則,請執行 gcloud compute forwarding-rules create 指令:

gcloud compute forwarding-rules create FORWARDING_RULE_2_NAME \
--address=IP_ADDRESS_2_ID \
--network=projects/PROJECT_1_ID/global/networks/NETWORK_1_ID \
--region=REGION_ID \
--target-service-attachment=SERVICE_ATTACHMENT_2 \
--project=PROJECT_1_ID \
--allow-psc-global-access

更改下列內容:

  • FORWARDING_RULE_2_NAME 是您要建立的轉送規則名稱。
  • IP_ADDRESS_2_ID 是您在「保留 IP 位址」部分保留的 IP 位址 ID。
  • NETWORK_1_ID 是第一個網路的 ID。
  • REGION_ID 是 Memorystore 執行個體所在的地區。
  • SERVICE_ATTACHMENT_2 是您在「注意服務附件路徑」一節中提到的第二個服務附件。
  • PROJECT_1_ID 是專案 1 的 ID。這是 Memorystore 執行個體所在的專案。

例如:

gcloud compute forwarding-rules create my-forwarding-rule-2 \
--address=my-ip-address-2 \
--network=projects/my-project-1/global/networks/my-network-1 \
--region=us-central1 \
--target-service-attachment=projects/1048073346231/regions/us-central1/serviceAttachments/gcp-memorystore-auto-a0583920-edef-42-psc-sa-2 \
--project=my-project-1 \
--allow-psc-global-access

為網路 1 的 Memorystore 執行個體註冊 Private Service Connect 連線

本節說明如何為 Private Service Connect 連線註冊 Memorystore 執行個體。首先,您需要取得轉送規則的連線 ID 和專案 ID。

接著,您可以在 Memorystore 執行個體中註冊 Private Service Connect 連線資訊,啟用連線功能。

取得網路 1 的轉送規則連線 ID 和專案 ID

接著,取得每個轉送規則的 pscConnectionId 值。請記下這些值。

取得 Private Service Connect 連線 ID 1

gcloud

如要查看 pscConnectionId 值和其他轉送規則摘要資訊,請執行 gcloud compute forwarding-rules describe 指令:

gcloud compute forwarding-rules describe FORWARDING_RULE_1_NAME \
--project=PROJECT_1_ID \
--region=REGION_ID

更改下列內容:

  • FORWARDING_RULE_1_NAME 是第一個轉送規則的名稱。
  • PROJECT_1_ID 是包含轉送規則的 Google Cloud 專案 ID。

以下範例顯示此指令的輸出範例:

gcloud compute forwarding-rules describe my-forwarding-rule-1 \
--project=my-project-1 \
--region=us-central1

...

pscConnectionId: '415109836469698'
取得 Private Service Connect 連線 ID 2

gcloud

如要查看 pscConnectionId 值和其他轉送規則摘要資訊,請執行 gcloud compute forwarding-rules describe 指令:

gcloud compute forwarding-rules describe FORWARDING_RULE_2_NAME \
--project=PROJECT_1_ID \
--region=REGION_ID

更改下列內容:

  • FORWARDING_RULE_2_NAME 是第二個轉送規則的名稱。
  • PROJECT_1_ID 是包含轉送規則的 Google Cloud 專案 ID。

註冊 VPC 網路 1 的連線資訊

gcloud

如要註冊每個 Private Service Connect 連線,您必須提供 Private Service Connect 連線 ID、IP 位址、網路路徑、轉送規則路徑/URI 和目標服務連結。如要執行這項操作,請執行 gcloud memorystore instances update --add-endpoints 指令:

  gcloud memorystore instances update INSTANCE_ID \
   --location=REGION_ID \
   --project=PROJECT_1_ID \
   --add-endpoints='[{"connections":[{"pscConnection":{"pscConnectionId":"PSC_CONNECTION_1_ID","ipAddress":"IP_ADDRESS_1","network":"projects/PROJECT_1_ID/global/networks/NETWORK_1_ID","forwardingRule":"projects/PROJECT_1_ID/regions/REGION_ID/forwardingRules/FORWARDING_RULE_1_NAME","serviceAttachment":"SERVICE_ATTACHMENT_1"}}, {"pscConnection":{"pscConnectionId":"PSC_CONNECTION_2_ID","ipAddress":"IP_ADDRESS_2","network":"projects/PROJECT_1_ID/global/networks/NETWORK_1_ID","forwardingRule":"projects/PROJECT_1_ID/regions/REGION_ID/forwardingRules/FORWARDING_RULE_2_NAME","serviceAttachment":"SERVICE_ATTACHMENT_2"}}]}]'
  

更改下列內容:

  • INSTANCE_ID 是 Memorystore for Valkey 執行個體的 ID。
  • REGION_ID 是 Memorystore 執行個體所在區域的 ID。
  • PROJECT_1_ID 是專案 1 的 ID。這是 Memorystore 執行個體所在的專案。
  • PSC_CONNECTION_1_ID 是您在取得轉送規則連線 ID 時記下的首個 Private Service Connect 連線 ID。
  • IP_ADDRESS_1 是您預留的第一個 IP 位址。
  • NETWORK_1_ID 是網路 1 的 ID。
  • FORWARDING_RULE_1_NAME 是您建立的第一個轉送規則的名稱。
  • SERVICE_ATTACHMENT_1FORWARDING RULE_1_NAME 連結的第一個服務附件。
  • PSC_CONNECTION_2_ID 是您在取得轉送規則連線 ID 時記下的第二個 Private Service Connect 連線 ID。
  • IP_ADDRESS_2 是您預留的第二個 IP 位址。
  • FORWARDING_RULE_2_NAME 是您建立的第二個轉送規則名稱。
  • SERVICE_ATTACHMENT_2FORWARDING_RULE_2_NAME 連結的第二個服務附件。

    例如:

    gcloud memorystore instances update my-instance \
    --location=us-central-1 \
    --project=my-project-1 \
    --add-endpoints='[{"connections":[{"pscConnection":{"pscConnectionId":"41510983646969883","ipAddress":"10.2.5.9","network":"projects/my-project-1/global/networks/my-network-1","forwardingRule":"projects/my-project-1/regions/us-central1/forwardingRules/my-forwarding-rule-1","serviceAttachment":"projects/1048073346231/regions/us-central1/serviceAttachments/gcp-memorystore-auto-8d7d48ef-3ca3-4d-psc-sa"}}, {"pscConnection":{"pscConnectionId":"41510983646969234","ipAddress":"10.2.5.11","network":"projects/my-project-1/global/networks/my-network-1","forwardingRule":"projects/my-project-1/regions/us-central1/forwardingRules/my-forwarding-rule-2","serviceAttachment":"projects/1048073346231/regions/us-central1/serviceAttachments/gcp-memorystore-auto-8d7d48ef-3ca3-4d-psc-sa-2"}}]}]'
    

步驟 4:為第二個虛擬私有雲網路設定及註冊連線

本節說明如何設定第二個虛擬私有雲網路所需的兩個 Private Service Connect 連線。

為網路 2 建立 Private Service Connect 端點

本節說明在 Network 2 中建立 2 個 Private Service Connect 端點時,需要採取的動作。

為網路 2 保留 IP 位址

接著,在網路 2 中保留 2 個 IP 位址。

保留 IP 位址 3

gcloud

如要保留 IP 位址 3,請執行 gcloud compute addresses create 指令:

gcloud compute addresses create IP_ADDRESS_3_ID \
--project=PROJECT_2_ID \
--addresses=IP_ADDRESS_3 \
--region=REGION_ID \
--subnet=projects/PROJECT_2_ID/regions/REGION_ID/subnetworks/SUBNET_2_ID \
--purpose=GCE_ENDPOINT

更改下列內容:

  • IP_ADDRESS_3_ID 是您為 IP 位址指定的 ID。
  • PROJECT_2_ID 是專案 2 的 ID。這是您建立第二個 VPC 網路和子網路的專案。
  • IP_ADDRESS_3 是您在必要資源中保留的 SUBNET_2_ID 範圍內所選擇的 IP 位址。
  • REGION_ID 是 Memorystore 執行個體所在的地區。
  • SUBNET_2_ID 是專案 2 中網路 2 上保留的子網路 ID,屬於必要條件資源的一部分。
保留 IP 位址 4

gcloud

如要保留 IP 位址 4,請執行 gcloud compute addresses create 指令:

gcloud compute addresses create IP_ADDRESS_4_ID \
--project=PROJECT_2_ID \
--addresses=IP_ADDRESS_4 \
--region=REGION_ID \
--subnet=projects/PROJECT_2_ID/regions/REGION_ID/subnetworks/SUBNET_2_ID \
--purpose=GCE_ENDPOINT

更改下列內容:

  • IP_ADDRESS_4_ID 是您為 IP 位址指定的 ID。
  • PROJECT_2_ID 是專案 2 的 ID。這是您建立第二個 VPC 網路和子網路的專案。
  • IP_ADDRESS_4 是您在必要資源中保留的 SUBNET_2_ID 範圍內所選擇的 IP 位址。
  • REGION_ID 是 Memorystore 執行個體所在的地區。
  • SUBNET_2_ID 是專案 2 中網路 2 上保留的子網路 ID,屬於先決條件資源的一部分。

新增網路 2 的轉送規則

接下來,請建立轉送規則,將 IP 位址連結至 Memorystore 執行個體的服務附件。

為 IP 3 新增轉送規則 3

gcloud

如要為 IP 3 新增轉送規則,請執行 gcloud compute forwarding-rules create 指令:

gcloud compute forwarding-rules create FORWARDING_RULE_3_NAME \
--address=IP_ADDRESS_3_ID \
--network=projects/PROJECT_2_ID/global/networks/NETWORK_2_ID \
--region=REGION_ID \
--target-service-attachment=SERVICE_ATTACHMENT_1 \
--project=PROJECT_2_ID \
--allow-psc-global-access

更改下列內容:

  • FORWARDING_RULE_3_NAME 是您要建立的轉送規則名稱。
  • IP_ADDRESS_3_ID 是您在「保留 IP 位址」部分保留的 IP 位址 ID。
  • NETWORK_2_ID 是第二個網路的 ID。
  • REGION_ID 是 Memorystore 執行個體所在的地區。
  • SERVICE_ATTACHMENT_1 是您在「注意服務附件路徑」一節中提到的第一個服務附件。
  • PROJECT_2_ID 是您的第二個專案。

例如:

gcloud compute forwarding-rules create my-forwarding-rule-3 \
--address=my-ip-address-3 \
--network=projects/my-project-2/global/networks/my-network-2 \
--region=us-central1 \
--target-service-attachment=projects/1048073346231/regions/us-central1/serviceAttachments/gcp-memorystore-auto-a0583920-edef-42-psc-sa \
--project=my-project-2 \
--allow-psc-global-access
為 IP 4 新增轉送規則 4

gcloud

如要為 IP 4 新增轉送規則,請執行 gcloud compute forwarding-rules create 指令:

gcloud compute forwarding-rules create FORWARDING_RULE_4_NAME \
--address=IP_ADDRESS_4_ID \
--network=projects/PROJECT_2_ID/global/networks/NETWORK_2_ID \
--region=REGION_ID \
--target-service-attachment=SERVICE_ATTACHMENT_2 \
--project=PROJECT_2_ID \
--allow-psc-global-access

更改下列內容:

  • FORWARDING_RULE_4_NAME 是您要建立的轉送規則名稱。
  • IP_ADDRESS_4_ID 是您在「保留 IP 位址」部分保留的 IP 位址 ID。
  • NETWORK_2_ID 是第二個網路的 ID。
  • REGION_ID 是 Memorystore 執行個體所在的地區。
  • SERVICE_ATTACHMENT_2 是您在「注意服務附件路徑」一節中提到的第二個服務附件。
  • PROJECT_2_ID 是您的第二個專案。

例如:

gcloud compute forwarding-rules create my-forwarding-rule-4 \
--address=my-ip-address-4 \
--network=projects/my-project-2/global/networks/my-network-2 \
--region=us-central1 \
--target-service-attachment=projects/1048073346231/regions/us-central1/serviceAttachments/gcp-memorystore-auto-a0583920-edef-42-psc-sa-2 \
--project=my-project-2 \
--allow-psc-global-access

為網路 2 的 Memorystore 執行個體註冊 Private Service Connect 連線

本節說明如何為 Private Service Connect 連線註冊 Memorystore 執行個體。首先,您需要取得轉送規則的連線 ID 和專案 ID。

取得網路 2 的轉送規則連線 ID 和專案 ID

接著,取得每個轉送規則的 pscConnectionId 值。請記下這些值。

取得 Private Service Connect 連線 ID 3

gcloud

如要查看 pscConnectionId 值和其他轉送規則摘要資訊,請執行 gcloud compute forwarding-rules describe 指令:

gcloud compute forwarding-rules describe FORWARDING_RULE_3_NAME \
--project=PROJECT_2_ID \
--region=REGION_ID

更改下列內容:

  • FORWARDING_RULE_3_NAME 是第三個轉送規則的名稱。
  • PROJECT_2_ID 是包含轉送規則的 Google Cloud 專案 ID。

以下範例顯示此指令的輸出範例:

gcloud compute forwarding-rules describe my-forwarding-rule-3 \
--project=my-project-2 \
--region=us-central1

...

pscConnectionId: '94710983646969729'
取得 Private Service Connect 連線 ID 4

gcloud

如要查看 pscConnectionId 值和其他轉送規則摘要資訊,請執行 gcloud compute forwarding-rules describe 指令:

gcloud compute forwarding-rules describe FORWARDING_RULE_4_NAME \
--project=PROJECT_2_ID \
--region=REGION_ID

更改下列內容:

  • FORWARDING_RULE_4_NAME 是第四個轉送規則的名稱。
  • PROJECT_2_ID 是包含轉送規則的 Google Cloud 專案 ID。

為 VPC 網路 2 註冊 Private Service Connect 連線資訊

gcloud

如要註冊每個 Private Service Connect 連線,您必須提供 Private Service Connect 連線 ID、IP 位址、網路路徑、轉送規則路徑/URI 和目標服務連結。如要執行這項操作,請執行 gcloud memorystore instances update --add-endpoints 指令:

gcloud memorystore instances update INSTANCE_ID \
--location=REGION_ID \
--project=PROJECT_1_ID \
--add-endpoints='[{"connections":[{"pscConnection":{"pscConnectionId":"PSC_CONNECTION_3_ID","ipAddress":"IP_ADDRESS_3","network":"projects/PROJECT_2_ID/global/networks/NETWORK_2_ID","forwardingRule":"projects/PROJECT_2_ID/regions/REGION_ID/forwardingRules/FORWARDING_RULE_3_NAME","serviceAttachment":"SERVICE_ATTACHMENT_1"}}, {"pscConnection":{"pscConnectionId":"PSC_CONNECTION_4_ID","ipAddress":"IP_ADDRESS_4","network":"projects/PROJECT_2_ID/global/networks/NETWORK_2_ID","forwardingRule":"projects/PROJECT_2_ID/regions/REGION_ID/forwardingRules/FORWARDING_RULE_4_NAME","serviceAttachment":"SERVICE_ATTACHMENT_2"}}]}]'

更改下列內容:

  • INSTANCE_ID 是 Memorystore for Valkey 執行個體的 ID。
  • REGION_ID 是 Memorystore 執行個體所在區域的 ID。
  • PROJECT_1_ID 是專案 1 的 ID。這是 Memorystore 執行個體所在的專案。
  • PROJECT_2_ID 是專案 2 的 ID。這是您建立第二個 VPC 網路和子網路的專案。
  • PSC_CONNECTION_3_ID 是您在取得網路 2 的轉送規則連線 ID 時記下的 Private Service Connect 連線 3。
  • IP_ADDRESS_3 是您預留的第三個 IP 位址。
  • NETWORK_2_ID 是 Network 2 的 ID。
  • FORWARDING_RULE_3_NAME 是您建立的第三個轉送規則名稱。
  • SERVICE_ATTACHMENT_1FORWARDING RULE_3_NAME 連結的第一個服務附件。
  • PSC_CONNECTION_4_ID 是您在取得網路 2 的轉送規則連線 ID 時記下的 Private Service Connect 連線 4。
  • IP_ADDRESS_4 是您預留的第四個 IP 位址。
  • FORWARDING_RULE_4_NAME 是您建立的第四個轉送規則名稱。
  • SERVICE_ATTACHMENT_2FORWARDING_RULE_4_NAME 連結的第二個服務附件。

例如:

gcloud memorystore instances my-instance \
--location=us-central-1 \
--project=my-project-1 \
--add-endpoints='[{"connections":[{"pscConnection":{"pscConnectionId":"94710983646969729","ipAddress":"10.142.0.10","network":"projects/my-project-2/global/networks/my-network-2","forwardingRule":"projects/my-project-2/regions/us-central1/forwardingRules/my-forwarding-rule-3","serviceAttachment":"projects/1048073346231/regions/us-central1/serviceAttachments/gcp-memorystore-auto-8d7d48ef-3ca3-4d-psc-sa"}}, {"pscConnection":{"pscConnectionId":"86510983646969993","ipAddress":"10.142.0.12","network":"projects/my-project-2/global/networks/my-network-2","forwardingRule":"projects/my-project-2/regions/us-central1/forwardingRules/my-forwarding-rule-4","serviceAttachment":"projects/1048073346231/regions/us-central1/serviceAttachments/gcp-memorystore-auto-8d7d48ef-3ca3-4d-psc-sa-2"}}]}]'

步驟 5:設定用戶端連線

本節說明如何設定用戶端,以便與本指南中所述的網路連線。

記下 Private Service Connect 連線端點資訊

接下來,請記下兩個 IP 位址:分別是您在本教學課程中設定的每個網路。您為 Memorystore 設定的每個網路都有探索連線端點。

gcloud

如要查看網路的 Private Service Connect 連線端點資訊,請執行 gcloud memorystore instances describe 指令:

gcloud memorystore instances describe INSTANCE_ID \
--location=REGION_ID \
--project=PROJECT_1_ID

輸出內容包含 Endpoints 清單。每個 Endpoint 都有兩個使用者註冊的 Private Service Connect 連線。

請記下與 CONNECTION_TYPE_DISCOVERY 類型 Private Service Connect 連線相對應的 IP 位址。在本教學課程中,您設定的兩個網路各有一個。

舉例來說,以下是 gcloud memorystore instances describe 指令的輸出範例,其中包含您應記下的 IP 位址:

Endpoints:
- connections:
  - pscConnection:
      connectionType: CONNECTION_TYPE_DISCOVERY
      forwardingRule: projects/my-project-1/regions/us-central1/forwardingRules/my-forwarding-rule-1
      ipAddress: 10.2.5.9
      network: projects/my-project-1/global/networks/my-network-1
      projectId: my-network-1
      pscConnectionId: '41510983646969883'
      pscConnectionStatus: ACTIVE
      serviceAttachment: projects/1048073346231/regions/us-central1/serviceAttachments/gcp-memorystore-auto-8d7d48ef-3ca3-4d-psc-sa
  - pscConnection:
      forwardingRule: projects/my-project-1/regions/us-central1/forwardingRules/my-forwarding-rule-2
      ipAddress: 10.2.5.11
      network: projects/my-project-1/global/networks/my-network-1
      projectId: my-project-1
      pscConnectionId: '41510983646969234'
      pscConnectionStatus: ACTIVE
      serviceAttachment: projects/1048073346231/regions/us-central1/serviceAttachments/gcp-memorystore-auto-8d7d48ef-3ca3-4d-psc-sa-2
- connections:
  - pscConnection:
      connectionType: CONNECTION_TYPE_DISCOVERY
      forwardingRule: projects/my-project-2/regions/us-central1/forwardingRules/my-forwarding-rule-3
      ipAddress: 10.142.0.10        
      network: projects/my-project-2/global/networks/my-network-2
      projectId: my-network-2
      pscConnectionId: '94710983646969729'
      pscConnectionStatus: ACTIVE
      serviceAttachment: projects/1048073346231/regions/us-central1/serviceAttachments/gcp-memorystore-auto-8d7d48ef-3ca3-4d-psc-sa
  - pscConnection:
      forwardingRule: projects/my-project-2/regions/us-central1/forwardingRules/my-forwarding-rule-4
      ipAddress: 10.142.0.12
      network: projects/my-project-2/global/networks/my-network-2
      projectId: my-project-2
      pscConnectionId: '86510983646969993'
      pscConnectionStatus: ACTIVE
      serviceAttachment: projects/1048073346231/regions/us-central1/serviceAttachments/gcp-memorystore-auto-8d7d48ef-3ca3-4d-psc-sa-2

在上述輸出內容中,您需要記下的探索 Private Service Connect 連線 IP 位址值為 10.2.5.910.142.0.10

設定用戶端

接下來,請按照下列步驟設定用戶端:

  • 使用網路 1 中的探索 IP 設定網路 1 中的用戶端連線。這是您在上一個步驟中記下的 IP 位址。在本教學課程的範例中,這個值為 10.2.5.9

  • 使用網路 2 中的探索 IP 設定網路 2 中的用戶端連線。這是您在上一個步驟中記下的 IP 位址。在本教學課程的範例中,這個值為 10.142.0.10

如要瞭解如何連線至 Memorystore 執行個體,請參閱「使用 valkey-cli 從 Compute Engine VM 連線」一文。

刪除 Private Service Connect 連線

如要刪除 Memorystore 執行個體,您必須先刪除與該執行個體相關聯的所有 Private Service Connect 連線。為此,您必須刪除轉送規則,並取消註冊您在本教學課程中設定的端點。本節將引導您先刪除所有轉送規則,然後取消註冊端點。不過,您可以選擇一次刪除一個網路的轉送規則,並取消註冊端點。

此外,您也可以選擇刪除保留的 IP 位址,以便日後使用。

刪除轉送規則

本節將說明如何刪除先前在本教學課程中建立的轉送規則。

刪除轉送規則 1

gcloud

如要刪除轉送規則,請執行 gcloud compute forwarding-rules delete 指令:

gcloud compute forwarding-rules delete FORWARDING_RULE_1_NAME \
--region=REGION_ID \
--project=PROJECT_1_ID

更改下列內容:

  • FORWARDING_RULE_1_NAME 是第一個轉送規則的名稱。
  • PROJECT_1_ID 是專案 1 的 ID。這是 Memorystore 執行個體所在的專案。

刪除轉送規則 2

gcloud

如要刪除轉送規則,請執行 gcloud compute forwarding-rules delete 指令:

gcloud compute forwarding-rules delete FORWARDING_RULE_2_NAME \
--region=REGION_ID \
--project=PROJECT_1_ID

更改下列內容:

  • FORWARDING_RULE_2_NAME 是第二個轉送規則的名稱。
  • PROJECT_1_ID 是專案 1 的 ID。這是 Memorystore 執行個體所在的專案。

刪除轉送規則 3

gcloud

如要刪除轉送規則,請執行 gcloud compute forwarding-rules delete 指令:

gcloud compute forwarding-rules delete FORWARDING_RULE_3_NAME \
--region=REGION_ID \
--project=PROJECT_2_ID

更改下列內容:

  • FORWARDING_RULE_3_NAME 是第三個轉送規則的名稱。
  • PROJECT_2_ID 是專案 2 的 ID。這是您建立第二個 VPC 網路和子網路的專案。

刪除轉送規則 4

gcloud

如要刪除轉送規則,請執行 gcloud compute forwarding-rules delete 指令:

gcloud compute forwarding-rules delete FORWARDING_RULE_4_NAME \
--region=REGION_ID \
--project=PROJECT_2_ID

更改下列內容:

  • FORWARDING_RULE_4_NAME 是第四個轉送規則的名稱。
  • PROJECT_2_ID 是專案 2 的 ID。這是您建立第二個 VPC 網路和子網路的專案。

取消註冊 Private Service Connect 端點

本節說明如何取消註冊您稍早在本教學課程中註冊的 Private Service Connect 端點。

取消註冊 VPC 網路 1 和 2 的端點

gcloud

如要取消註冊 Memorystore 執行個體的端點資訊,請執行 gcloud memorystore instances update --remove-endpoints 指令。

gcloud memorystore instances update INSTANCE_ID \
--location=REGION_ID \
--project=PROJECT_1_ID \
--remove-endpoints='[{"connections":[{"pscConnection":{"pscConnectionId":"PSC_CONNECTION_1_ID","ipAddress":"IP_ADDRESS_1","network":"projects/PROJECT_1_ID/global/networks/NETWORK_1_ID","forwardingRule":"projects/PROJECT_1_ID/regions/REGION_ID/forwardingRules/FORWARDING_RULE_1_NAME","serviceAttachment":"SERVICE_ATTACHMENT_1"}}, {"pscConnection":{"pscConnectionId":"PSC_CONNECTION_2_ID","ipAddress":"IP_ADDRESS_2","network":"projects/PROJECT_1_ID/global/networks/NETWORK_1_ID","forwardingRule":"projects/PROJECT_1_ID/regions/REGION_ID/forwardingRules/FORWARDING_RULE_2_NAME","serviceAttachment":"SERVICE_ATTACHMENT_2"}}]}, {"connections":[{"pscConnection":{"pscConnectionId":"PSC_CONNECTION_3_ID","ipAddress":"IP_ADDRESS_3","network":"projects/PROJECT_2_ID/global/networks/NETWORK_2_ID","forwardingRule":"projects/PROJECT_2_ID/regions/REGION_ID/forwardingRules/FORWARDING_RULE_3_NAME","serviceAttachment":"SERVICE_ATTACHMENT_1"}}, {"pscConnection":{"pscConnectionId":"PSC_CONNECTION_4_ID","ipAddress":"IP_ADDRESS_4","network":"projects/PROJECT_2_ID/global/networks/NETWORK_2_ID","forwardingRule":"projects/PROJECT_2_ID/regions/REGION_ID/forwardingRules/FORWARDING_RULE_4_NAME","serviceAttachment":"SERVICE_ATTACHMENT_2"}}]}]'

更改下列內容:

  • INSTANCE_ID 是您要取消註冊端點的執行個體 ID。
  • PROJECT_1_ID 是專案 1 的 ID。這是 Memorystore 執行個體所在的專案。
  • REGION_ID 是 Memorystore 執行個體所在區域的 ID。
  • PSC_CONNECTION_1_ID 是您在取得轉送規則連線 ID 時記下的首個 Private Service Connect 連線 ID。
  • IP_ADDRESS_1 是您預留的第一個 IP 位址。
  • NETWORK_1_ID 是網路 1 的 ID。
  • FORWARDING_RULE_1_NAME 是您建立的第一個轉送規則的名稱。
  • SERVICE_ATTACHMENT_1FORWARDING RULE_1_NAME 連結的第一個服務附件。
  • PSC_CONNECTION_2_ID 是您在取得轉送規則連線 ID 時記下的第二個 Private Service Connect 連線 ID。
  • IP_ADDRESS_2 是您預留的第二個 IP 位址。
  • FORWARDING_RULE_2_NAME 是您建立的第二個轉送規則名稱。
  • SERVICE_ATTACHMENT_2FORWARDING_RULE_2_NAME 連結的第二個服務附件。
  • PROJECT_2_ID 是專案 2 的 ID。這是您建立第二個 VPC 網路和子網路的專案。
  • PSC_CONNECTION_3_ID 是您在取得網路 2 的轉送規則連線 ID 時記下的 Private Service Connect 連線 3。
  • IP_ADDRESS_3 是您預留的第三個 IP 位址。
  • NETWORK_2_ID 是 Network 2 的 ID。
  • FORWARDING_RULE_3_NAME 是您建立的第三個轉送規則名稱。
  • SERVICE_ATTACHMENT_1FORWARDING RULE_3_NAME 連結的第一個服務附件。
  • PSC_CONNECTION_4_ID 是您在取得網路 2 的轉送規則連線 ID 時記下的 Private Service Connect 連線 4。
  • IP_ADDRESS_4 是您預留的第四個 IP 位址。
  • FORWARDING_RULE_4_NAME 是您建立的第四個轉送規則名稱。
  • SERVICE_ATTACHMENT_2FORWARDING_RULE_4_NAME 連結的第二個服務附件。

上述指令會註銷本教學課程中建立的所有連線。如果只想註銷其中一個連線,請只指定要移除的連線 ID。

刪除 Memorystore for Valkey 執行個體

您必須先取消註冊 Private Service Connect 端點,才能刪除 Memorystore 執行個體。

gcloud

如要刪除 Memorystore for Valkey 執行個體,請執行 gcloud memorystore instances delete 指令:

gcloud memorystore instances delete INSTANCE_ID \
--location=REGION_ID \
--project=PROJECT_1_ID

更改下列內容:

  • INSTANCE_ID 是執行個體的 ID。
  • REGION_ID 是 Memorystore 執行個體所在區域的 ID。
  • PROJECT_1_ID 是專案 1 的 ID。這是 Memorystore 執行個體所在的專案。