扩缩实例

本页介绍如何扩缩 AlloyDB 实例。您可以通过更改实例的机器类型来纵向扩缩主实例和读取池实例,也可以通过更改实例中的节点数量来横向扩缩读取池实例。

准备工作

  • 您使用的 Google Cloud 项目必须已启用才能访问 AlloyDB
  • 您必须在所使用的 Google Cloud 项目中拥有以下 IAM 角色之一:
    • roles/alloydb.admin(AlloyDB Admin 预定义 IAM 角色)
    • roles/owner(Owner 基本 IAM 角色)
    • roles/editor(Editor 基本 IAM 角色)

    如果您不拥有上述任何角色,请与组织管理员联系以申请访问权限。

扩缩实例的机器类型

控制台

  1. 在 Google Cloud 控制台中,前往集群页面。

    转到集群

  2. 资源名称列中点击相应集群。

  3. 概览页面中,前往集群中的实例部分,然后点击修改主实例修改读取池

    请注意,如果页面报告的集群状态维护,则此操作不可用。在状态更改为准备就绪后,此操作会再次可用。

  4. 选择以下机器系列之一:

    • C4A(基于 Google Axion 的机器系列)(预览版
    • N2(基于 x86 的机器系列)。这是默认的机器系列。
  5. 选择机器类型。

    • C4A 支持 1、4、8、16、32、48、64 和 72 种机器类型或形式。
    • N2 支持 2、4、8、16、32、64、96 和 128 机器类型。

      如需详细了解如何使用基于 C4A Axion 的机器系列(包括 1 vCPU 机器类型),请参阅使用基于 C4A Axion 的机器系列时的注意事项

  6. 点击更新实例更新读取池

gcloud

如需使用 gcloud CLI,您可以安装并初始化 Google Cloud CLI,也可以使用 Cloud Shell

使用 gcloud alloydb instances update 命令可更改主实例的机器类型。

gcloud alloydb instances update INSTANCE_ID \
--cpu-count=CPU_COUNT \
--machine-type=MACHINE_TYPE \
--region=REGION_ID \
--cluster=CLUSTER_ID \
--project=PROJECT_ID

替换以下内容:

  • INSTANCE_ID:要更新的实例的 ID。

  • CPU_COUNT:您希望实例拥有的 N2 vCPU 数量。默认值为 N2。有效值包括:

    • 2:2 个 vCPU,16 GB RAM
    • 4:4 个 vCPU,32 GB RAM
    • 8:8 个 vCPU,64 GB RAM
    • 16:16 个 vCPU,128 GB RAM
    • 32:32 个 vCPU,256 GB RAM
    • 64:64 个 vCPU,512 GB RAM
    • 96:96 个 vCPU,768 GB RAM
    • 128:128 个 vCPU,864 GB RAM

  • MACHINE_TYPE:在部署 N2 机器时,此参数是可选的。如需部署基于 C4A Axion 的机器系列(预览版),或者在 C4A 机器与 N2 机器之间迁移,请选择此参数并设置以下值。

    MACHINE_TYPECPU_COUNT 结合使用时,CPU_COUNTMACHINE_TYPE 中的值必须匹配,否则会出现错误。

    对于基于 C4A Axion 的机器系列,请选择具有以下值的机器类型:

    • c4a-highmem-1
    • c4a-highmem-4-lssd
    • c4a-highmem-8-lssd
    • c4a-highmem-16-lssd
    • c4a-highmem-32-lssd
    • c4a-highmem-48-lssd
    • c4a-highmem-64-lssd
    • c4a-highmem-72-lssd

    如需部署具有 4 个 vCPU 及以上的 C4A,请使用后缀 lssd 以启用超快缓存。

    如需详细了解如何使用基于 C4A Axion 的机器系列(包括 1 个 vCPU 机器类型),请参阅使用基于 C4A Axion 的机器系列时的注意事项

    对于基于 x86 的 N2 机器系列,请使用以下值:

    • N2-highmem-2
    • N2-highmem-4
    • N2-highmem-8
    • N2-highmem-16
    • N2-highmem-32
    • N2-highmem-64
    • N2-highmem-96
    • N2-highmem-128
  • REGION_ID:实例所在的区域。

  • CLUSTER_ID:实例所在集群的 ID。

  • PROJECT_ID:集群所在项目的 ID。

如果该命令返回包含 invalid cluster state MAINTENANCE 字词的错误消息,则表示集群正在进行日常维护。这会暂时禁止实例重新配置。 在集群恢复为 READY 状态后,再次运行该命令。如需查看集群状态,请参阅查看集群详情

加快机器类型更新速度

如需更快地更新机器类型,可以将 FORCE_APPLY 选项与 gcloud beta alloydb instances update 命令搭配使用。

 gcloud beta alloydb instances update INSTANCE_ID \
  --cpu-count=CPU_COUNT \
  --machine-type=MACHINE_TYPE \
  --region=REGION_ID \
  --cluster=CLUSTER_ID \
  --project=PROJECT_ID
  --update-mode=FORCE_APPLY
  • 实例会有大约 1 分钟的停机时间。

  • 对实例机器类型的更改会在 10 到 15 分钟后生效。

扩缩读取池实例的节点数

AlloyDB 允许您在实例级层扩缩读取池实例中的节点数量,而不会造成任何停机。增加节点数量时,客户端连接不会受到影响。

减少节点数量时,之前连接到正在关停的节点的任何客户端都可以使用实例端点重新连接到其他节点。

控制台

  1. 在 Google Cloud 控制台中,前往集群页面。

    转到集群

  2. 资源名称列中点击相应集群。

  3. 概览页面中,前往集群中的实例部分,然后点击修改读取池

    请注意,如果页面报告的集群状态维护,则此操作不可用。在状态更改为准备就绪后,此操作会再次可用。

  4. 节点数字段中,输入节点数。注意:一个集群中的所有读取池实例最多可以有 20 个节点。

  5. 点击更新读取池

gcloud

如需使用 gcloud CLI,您可以安装并初始化 Google Cloud CLI,也可以使用 Cloud Shell

使用 gcloud alloydb instances update 命令可更改读取池实例中的节点数量。

gcloud alloydb instances update INSTANCE_ID \
    --read-pool-node-count=NODE_COUNT \
    --region=REGION_ID \
    --cluster=CLUSTER_ID \
    --project=PROJECT_ID
  • INSTANCE_ID:读取池实例的 ID。

  • NODE_COUNT:读取池实例中的节点数量。指定 120(含)之间的数字。请注意,一个集群中的所有读取池实例最多可以有 20 个节点。

  • REGION_ID::实例所在的区域。

  • CLUSTER_ID:实例所在集群的 ID。

  • PROJECT_ID:集群所在项目的 ID。

如果该命令返回包含 invalid cluster state MAINTENANCE 字词的错误消息,则表示集群正在进行日常维护。这会暂时禁止实例重新配置。 在集群恢复为 READY 状态后,再次运行该命令。如需查看集群状态,请参阅查看集群详情