本页介绍了如何为多个虚拟私有云 (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 连接,请运行 create 命令,而不指定网络,如以下示例所示。
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 连接
本部分介绍了向 Memorystore 实例注册 Private Service Connect 连接的步骤。首先,您需要获取转发规则的关联 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 连接
本部分介绍了向 Memorystore 实例注册 Private Service Connect 连接的步骤。首先,您需要获取转发规则的关联 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 实例
您必须先注销 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 实例所在的项目。