本页介绍了如何为多个虚拟私有云 (VPC) 网络和一个新的 Memorystore for Valkey 实例设置连接。为此,您需要执行以下操作:
在使用方网络中创建 Private Service Connect 端点。
以 Memorystore 实例的服务连接为目标。
向实例注册组件。
如需了解如何为已有一些自动注册的 Private Service Connect 连接的实例设置多个 VPC 网络,请参阅为已预配自动注册连接的实例设置多个 VPC 网络。
如需详细了解多 VPC 网络设置,请参阅关于多 VPC 网络。

关键步骤摘要
本部分总结了本教程中设置 Private Service Connect 连接的关键步骤。首先,完成准备工作部分中的步骤。
关键步骤
- 第 1 步:创建实例
- 第 2 步:记下服务附件路径
- 第 3 步:为第一个 VPC 网络设置并注册 Private Service Connect 连接
- 第 4 步:为第二个 VPC 网络设置并注册 Private Service Connect 连接
- 第 5 步:设置客户端连接
此外,您还可以:
准备工作
在开始之前,请确保您拥有以下 IAM 角色和 Google Cloud 资源。
所需 IAM 角色
| 资源 ID 示例 | 资源类型 |
|---|---|
roles/memorystore.admin
|
可以完全控制 Memorystore for Valkey 实例,并控制实例的整个生命周期。 |
roles/servicedirectory.editor
|
授予您修改 Service Directory 资源的权限。创建 Private Service Connect 端点需要此角色。 |
roles/compute.networkAdmin
|
授予对 VPC 网络的完整控制权限来启动与 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 项目 | 无 | 您的 Memorystore 实例位于此项目中 |
my-network-1
|
VPC 网络 |
projects/my-project-1/global/networks/my-network-1
|
在本教程中,您将在此网络中设置 2 个 Private Service Connect 连接 |
my-subnet-1
|
VPC 子网 |
projects/my-project-1/regions/us-central1/subnetworks/my-subnet-1
|
在本教程中,您将在此子网中预留 2 个 IP 地址 |
在本教程中,您将使用以下资源在 VPC 网络 2 中创建两个 Private Service Connect 连接:
| 资源 ID 示例 | 资源类型 | 完整路径示例 | 说明 |
|---|---|---|---|
my-project-2
|
Google Cloud 项目 | 无 | 在本教程中,这是您创建第二个网络和第二个子网的项目。不过,如果您愿意,第二个网络和子网可以与第一个网络位于同一项目中。 |
my-network-2
|
VPC 网络 |
projects/my-project-2/global/networks/my-network-2
|
在本教程中,您将在此网络中创建 2 个 Private Service Connect 端点 |
my-subnet-2
|
VPC 子网 |
projects/my-project-2/regions/us-central1/subnetworks/my-subnet-2
|
在本教程中,您将在此子网中预留 2 个 IP 地址 |
启用 API
启用管理 Compute Engine 网络、Memorystore for Valkey 和 Private Service Connect 资源所需的以下 API。
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 是您选择的副本数量(每个分片)。接受的值包括
0、1和2。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 步:为第一个 VPC 网络设置并注册连接
本部分介绍如何为第一个 VPC 网络设置所需的两个 Private Service Connect 连接。您必须针对要设置连接的每个 VPC 重复此流程。例如,在本教程的后面部分,您会发现这些步骤再次重复出现,但这次是针对第二个 VPC 网络所需的新连接。
为网络 1 创建 Private Service Connect 端点
本部分将介绍您需要采取哪些操作才能在网络 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
替换以下内容:
为网络 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_1 是与
FORWARDING RULE_1_NAME相连的第一个服务连接。 - PSC_CONNECTION_2_ID 是您在获取转发规则连接 ID 时记下的第二个 Private Service Connect 连接 ID。
- IP_ADDRESS_2 是您预留的第二个 IP 地址。
- FORWARDING_RULE_2_NAME 是您创建的第二个转发规则的名称。
SERVICE_ATTACHMENT_2 是您的第二个服务附件,与
FORWARDING_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 步:为第二个 VPC 网络设置和注册连接
本部分将介绍如何为第二个 VPC 网络设置所需的两个 Private Service Connect 连接。
为网络 2 创建 Private Service Connect 端点
本部分将介绍您需要采取哪些操作才能在网络 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 地址 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
替换以下内容:
为网络 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 是网络 2 的 ID。
- FORWARDING_RULE_3_NAME 是您创建的第三条转发规则的名称。
- SERVICE_ATTACHMENT_1 是与
FORWARDING RULE_3_NAME相连的第一个服务连接。 - PSC_CONNECTION_4_ID 是您在获取网络 2 的转发规则连接 ID 时记下的 Private Service Connect 连接 4。
- IP_ADDRESS_4 是您预留的第四个 IP 地址。
- FORWARDING_RULE_4_NAME 是您创建的第四条转发规则的名称。
- SERVICE_ATTACHMENT_2 是您的第二个服务附件,与
FORWARDING_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.9 和 10.142.0.10。
配置客户端
接下来,按如下方式配置客户端:
使用网络 1 中的发现 IP 配置网络 1 中的客户端连接。这是您在上一步中记下的 IP 地址。对于本教程中给出的示例,该值为
10.2.5.9。使用网络 2 中的发现 IP 配置网络 2 中的客户端连接。这是您在上一步中记下的 IP 地址。对于本教程中给出的示例,该值为
10.142.0.10。
如需了解如何连接到 Memorystore 实例,请参阅使用 valkey-cli 从 Compute Engine 虚拟机进行连接。
删除 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_1 是与
FORWARDING RULE_1_NAME相连的第一个服务连接。 - PSC_CONNECTION_2_ID 是您在获取转发规则连接 ID 时记下的第二个 Private Service Connect 连接 ID。
- IP_ADDRESS_2 是您预留的第二个 IP 地址。
- FORWARDING_RULE_2_NAME 是您创建的第二个转发规则的名称。
- SERVICE_ATTACHMENT_2 是您的第二个服务附件,与
FORWARDING_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 是网络 2 的 ID。
- FORWARDING_RULE_3_NAME 是您创建的第三条转发规则的名称。
- SERVICE_ATTACHMENT_1 是与
FORWARDING RULE_3_NAME相连的第一个服务连接。 - PSC_CONNECTION_4_ID 是您在获取网络 2 的转发规则连接 ID 时记下的 Private Service Connect 连接 4。
- IP_ADDRESS_4 是您预留的第四个 IP 地址。
- FORWARDING_RULE_4_NAME 是您创建的第四条转发规则的名称。
- SERVICE_ATTACHMENT_2 是您的第二个服务附件,与
FORWARDING_RULE_4_NAME相关联。
上述命令会取消注册本教程中创建的所有连接。如果您只想取消注册其中一个连接,请仅指定要移除的连接的连接 ID。
删除 Memorystore for Valkey 实例
在删除 Memorystore 实例之前,您必须取消注册 Private Service Connect 端点。
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 实例所在的项目。