本页面介绍了如何通过创建和使用次要集群来使用跨区域复制。
如需从概念上大致了解跨区域复制,请参阅跨区域复制简介。
创建次要集群
创建次要集群时,Memorystore for Redis Cluster 会复制一些主集群设置并将其作为次要集群设置应用。如需了解详情,请参阅集群设置。
您可以使用Google Cloud 控制台或 Google Cloud CLI 在 Memorystore for Redis 集群中创建辅助集群。
控制台
在 Google Cloud 控制台中,前往 Memorystore for Redis 集群页面。
点击主集群。主集群是您要创建的辅助集群的父集群。
在侧边栏中,点击次要集群标签页。
点击添加次要集群。
在添加次要集群窗口中,进行以下更改:
在集群 ID 字段中,输入您要创建的次要集群的 ID。ID 的长度必须介于 1 到 63 个字符之间,且只能使用小写字母、数字或连字符。必须以小写字母开头,以小写字母或数字结尾,并且在其区域中是唯一的。
从区域菜单中,选择您希望辅助集群所在的区域。
在可用区级可用性部分中,选择以下选项之一:
如果您希望集群的所有分片和副本都分布在 Memorystore for Redis 集群创建集群的区域的三个可用区内,请选择多可用区选项。
例如,如果您选择的区域为
us-central1
,并选择多可用区选项,则 Memorystore for Redis 集群会将集群的分片和副本分布在us-central1-a
、us-central1-b
和us-central1-c
可用区中。如果发生可用区故障,集群中的节点将故障切换到副本。如果您希望集群的所有分片和副本都位于 Memorystore for Redis 集群创建集群的区域中的一个可用区内,请选择单个可用区选项,然后从可用区菜单中选择可用区。
通过使用单个可用区,您可以降低网络费用。不过,如果发生可用区级故障,则不会进行故障切换。
从副本菜单中,选择集群的副本数量(每个分片)。您可以有 0 个、1 个或 2 个副本。
从网络菜单中,为集群选择一个网络。如需详细了解 Memorystore for Redis Cluster 的网络,请参阅网络概览。
点击添加次要集群。
gcloud
如需创建辅助集群,请使用 gcloud redis clusters create
命令。
gcloud redis clusters create CLUSTER_ID \ --project=PROJECT_ID \ --region=REGION_ID \ --cross-cluster-replication-role=secondary \ --network=NETWORK \ --primary-cluster=PRIMARY_CLUSTER_PATH
进行以下替换:
- CLUSTER_ID:您要创建的次要集群的 ID。 ID 必须介于 1 到 63 个字符之间,且只能使用小写字母、数字或连字符。必须以小写字母开头,以小写字母或数字结尾,并且在其区域中是唯一的。
- PROJECT_ID:您要在其中创建辅助集群的项目的 ID。这是主集群所在的同一项目。
- REGION_ID:您希望次要集群所在的区域的 ID。
- NETWORK:用于创建集群的网络。必须采用以下格式:
projects/NETWORK_PROJECT_ID/global/networks/NETWORK_ID
。您使用的网络 ID 必须与服务连接政策使用的网络 ID 相符。否则,您无法创建次要集群。 - PRIMARY_CLUSTER_PATH:主集群的路径。例如:
projects/my-project/locations/us-central1/clusters/my-primary-cluster
。 您可以选择项目中的任何集群作为主集群,只要它不是次要集群即可。
例如:
gcloud redis clusters create my-secondary-cluster \ --project=my-project \ --region=asia-east1 \ --cross-cluster-replication-role=secondary \ --network=projects/my-project/global/networks/default --primary-cluster=projects/my-project/locations/us-central1/clusters/my-primary-cluster
查看次要集群
您可以使用Google Cloud 控制台或 Google Cloud CLI 查看有关辅助集群的摘要信息。
控制台
在 Google Cloud 控制台中,前往 Memorystore for Redis 集群页面。
点击主集群旁边的展开箭头。此集群是您要查看其信息的次要集群的父集群。
点击次要集群。系统会显示有关该集群的摘要信息。
gcloud
如需查看有关次要集群的信息,包括列出复制组中主集群和次要集群的成员资格字段,请使用 gcloud redis clusters describe
命令。
gcloud redis clusters describe CLUSTER_ID \ --region=REGION_ID \
进行以下替换:
- CLUSTER_ID:辅助集群的 ID
- REGION_ID:次要集群所在区域的 ID
执行切换
通过切换,您可以将次要集群提升为主要集群,从而反转主要集群和次要集群的角色,以实现灾难恢复。
您可以使用 Google Cloud 控制台或 Google Cloud CLI 执行切换。
控制台
在 Google Cloud 控制台中,前往 Memorystore for Redis 集群页面。
点击主集群旁边的展开箭头。此集群是您要切换的次要集群的父集群。
点击次要集群。
点击提升为主。
在将次要集群提升为主要集群?对话框中,输入次要集群的 ID,然后点击提升。
切换完成后,您必须将应用重新连接到新的主集群。
gcloud
如需执行切换,请使用 gcloud redis clusters switchover
命令。
gcloud redis clusters switchover CLUSTER_ID \ --project=PROJECT_ID \ --region=REGION_ID \
进行以下替换:
- CLUSTER_ID:要切换的次要集群的 ID
- PROJECT_ID:您的项目 ID
- REGION_ID:次要集群所在区域的 ID
切换完成后,您必须将应用重新连接到新的主集群。
分离次要集群
如果将一个或多个次要集群从其主要集群分离,则系统会将其设为功能齐全且接受读取和写入的独立集群。如需了解详情,请参阅如何使用跨区域复制。
您可以使用 Google Cloud 控制台或 Google Cloud CLI 分离辅助集群。
分离次要集群
本部分介绍了如何将次要集群从其主集群分离。
控制台
在 Google Cloud 控制台中,前往 Memorystore for Redis 集群页面。
点击主集群。这是您要从主集群分离的次要集群的父级。
在侧边栏中,点击次要集群标签页。
选中要从主集群分离的次要集群 ID 旁边的复选框。
点击从主账号中分离。
在分离次要集群?对话框中,输入次要集群的 ID,然后点击分离。
gcloud
如需分离辅助集群,请使用 gcloud redis clusters detach
命令。
gcloud redis clusters detach CLUSTER_ID \ --project=PROJECT_ID \ --region=REGION_ID
进行以下替换:
- CLUSTER_ID:要分离的次要集群的 ID
- PROJECT_ID:您的项目 ID
- REGION_ID:次要集群所在区域的 ID
分离多个次要集群
本部分介绍如何将多个次要集群从其主集群分离。您还可以使用本部分中的过程将不可用的次要集群从其主集群分离。
控制台
在 Google Cloud 控制台中,前往 Memorystore for Redis 集群页面。
点击主集群。这是您要从主集群分离的次要集群的父级。
在侧边栏中,点击次要集群标签页。
选中要从主集群分离的次要集群的 ID 旁边的复选框。
点击从主账号中分离。
在分离次要集群?对话框中,执行以下操作:
输入次要集群的 ID。使用英文逗号分隔 ID。
点击分离。
gcloud
如需分离多个辅助集群,请使用 gcloud redis clusters detach-secondaries
命令。
gcloud redis clusters detach-secondaries PRIMARY_CLUSTER_ID \ --clusters-to-detach=SECONDARY_CLUSTERS \ --project=PROJECT_ID \ --region=PRIMARY_CLUSTER_REGION_ID
进行以下替换:
- PRIMARY_CLUSTER_ID:主集群的 ID。
- SECONDARY_CLUSTERS:您要分离的次要集群。使用英文逗号分隔集群 ID。每个辅助集群都必须采用以下格式:
projects/PROJECT_ID/locations/REGION_ID/clusters/CLUSTER_ID
。 - PROJECT_ID:您的项目 ID。
- PRIMARY_CLUSTER_REGION:主集群所在区域的 ID。
例如:
gcloud redis clusters detach-secondaries my-primary-cluster \ --clusters-to-detach=projects/my-project/locations/us-west4/clusters/my-secondary-cluster-1,projects/my-project/locations/asia-southeast2/clusters/my-secondary-cluster-2 \ --project=my-project \ --region=us-central1
更新集群设置
本部分提供了用于更新集群设置的链接。更新集群设置的过程因您更改的是主集群还是辅助集群的设置而异。如需详细了解如何更新设置,请参阅集群设置。
更新主集群的设置
您必须在主集群上更改以下设置。之后,Memorystore for Redis 集群会将更改同步到辅助集群。
更新辅助集群上的设置
您必须在次要集群上更改以下设置:
删除使用跨区域复制的集群
本部分介绍了如何删除使用跨区域复制的主集群和辅助集群。
删除主集群
如需删除主集群,请执行以下操作:
为防止意外删除,您无法同时删除主集群和辅助集群。
删除次要集群
如需删除辅助集群,请按照删除集群中的说明操作。对于集群 ID,请使用次要集群的 ID。