创建和管理 AlloyDB Express 集群

本文档介绍了如何创建、连接、修改、查看、删除和升级 AlloyDB Express 集群和实例。

如需详细了解 AlloyDB Express 功能与 AlloyDB 功能有何不同,请参阅 AlloyDB Express 概览。如需改为创建 AlloyDB 集群,请参阅创建集群及其主实例。

准备工作

在创建或管理 AlloyDB Express 集群之前,请完成以下前提条件:

所需的角色

如需获得创建和管理 AlloyDB Express 集群和实例所需的权限,请让管理员为您授予项目的以下 IAM 角色:

如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。

您也可以通过自定义角色或其他预定义角色来获取所需的权限。

创建 AlloyDB Express 集群和实例

您可以使用 Google Cloud 控制台、Google Cloud CLI、AlloyDB REST API 或 AlloyDB 远程 MCP 服务器创建 AlloyDB Express 集群及其主实例。

AlloyDB Express 集群支持 PostgreSQL 18,并包含一个可用区级主实例,该实例最初具有 1 个 vCPU(4 GB RAM),并可自动扩容存储空间,最高可达 20 GB。如果您计划稍后将 1 vCPU 实例就地升级到 AlloyDB,而不调整为 2 vCPU,请在同样支持 C4A 机器系列的区域中创建集群。

默认连接设置取决于您使用的工具:

  • Google Cloud 控制台:默认情况下,在主实例上启用公共 DNS,并在集群上启用 Private Service Connect。您可以稍后通过修改实例的连接设置来配置 Private Service Connect 使用方Google Cloud 项目。

  • gcloud CLI、REST API 和 AlloyDB 远程 MCP 服务器:默认情况下,仅在集群上启用 Private Service Connect。创建主实例时,如果您想通过公共 DNS 进行连接,请启用公共 DNS,并将要为该实例创建 Private Service Connect 端点的Google Cloud 使用方项目列入许可清单。

控制台

  1. 在 Google Cloud 控制台中,前往开始使用页面。

    前往“开始使用”

    如果您的 Google Cloud 项目已有集群,并且您改为从集群页面开始,请点击工具栏中的创建集群,打开选择配置页面。这两个页面都会显示预设的集群配置卡片(AlloyDB Express、生产环境(单可用区)和生产环境(多可用区))。

  2. 在 AlloyDB Express 卡片中,点击创建集群,打开创建 AlloyDB Express 集群窗格。

  3. 在创建 AlloyDB Express 集群窗格中,配置集群:

  4. 点击创建集群。

    Google Cloud 控制台会创建 AlloyDB Express 集群及其 1 vCPU 主实例,默认情况下会同时启用 Private Service Connect 和公共 DNS,然后打开 AlloyDB Studio,以便您查询数据库。

    在Google Cloud 控制台中创建集群期间,您无法更改连接设置,但可以稍后通过修改实例的连接设置来更新授权的外部网络或 Private Service Connect 设置。

gcloud

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

  1. 如需创建 AlloyDB Express 集群,请运行带有 --enable-express 标志的 gcloud beta alloydb clusters create 命令:

    gcloud beta alloydb clusters create CLUSTER_ID \
        --region=REGION_ID \
        --password=PASSWORD \
        --enable-express \
        --project=PROJECT_ID
    

    替换以下内容:

    • CLUSTER_ID:您要创建的集群的 ID。该 ID 必须以小写字母开头,可以包含小写字母、数字和连字符。
    • REGION_ID:您要在其中创建集群的受支持区域。如果您计划稍后将 1 vCPU 实例升级到 AlloyDB,而不调整为 2 vCPU,请选择一个也支持 C4A 机器系列的区域。
    • PASSWORD:默认 postgres 数据库用户的初始密码。
    • PROJECT_ID:您要在其中创建集群的Google Cloud 项目的 ID。
  2. 如需在 AlloyDB Express 集群中创建主实例,请运行 gcloud beta alloydb instances create 命令并选择连接标志:

    • 仅限公共 DNS:指定 --enable-public-dns 并省略 --allowed-psc-projects。
    • 仅限 Private Service Connect:省略 --enable-public-dns 并指定 --allowed-psc-projects=ALLOWED_PROJECT_ID,以允许来自使用方 Google Cloud 项目的 Private Service Connect 连接。
    • 公共 DNS 和 Private Service Connect:同时指定 --enable-public-dns 和 --allowed-psc-projects=ALLOWED_PROJECT_ID。
    gcloud beta alloydb instances create INSTANCE_ID \
        --cluster=CLUSTER_ID \
        --region=REGION_ID \
        --instance-type=PRIMARY \
        --cpu-count=1 \
        --enable-public-dns \
        --allowed-psc-projects=ALLOWED_PROJECT_ID \
        --project=PROJECT_ID
    

    替换以下内容:

    • INSTANCE_ID:您要创建的主实例的 ID。
    • ALLOWED_PROJECT_ID(可选):允许为此实例创建 Private Service Connect 端点的 Google Cloud 项目 ID 或项目编号的英文逗号分隔列表。如果您仅配置公共 DNS,请省略 --allowed-psc-projects。

REST

  1. 如需创建 AlloyDB Express 集群,请向 projects.locations.clusters.create 端点发送 POST 请求,并将 expressConfig.enabled 设置为 true。

    在使用任何请求数据之前,请先进行以下替换:

    • PROJECT_ID:您的Google Cloud 项目的 ID。
    • REGION_ID:您要在其中创建集群的受支持区域。如果您计划稍后将 1 vCPU 实例升级到 AlloyDB,而不调整为 2 vCPU,请选择一个也支持 C4A 机器系列的区域。
    • CLUSTER_ID:您要创建的集群的 ID。
    • INITIAL_USERNAME:初始数据库用户的用户名(例如 postgres)。
    • INITIAL_USER_PASSWORD:初始数据库用户的密码。

    HTTP 方法和网址:

    POST https://alloydb.googleapis.com/v1beta/projects/PROJECT_ID/locations/REGION_ID/clusters?clusterId=CLUSTER_ID
    

    请求 JSON 正文:

    {
      "databaseVersion": "POSTGRES_18",
      "expressConfig": {
        "enabled": true
      },
      "initialUser": {
        "user": "INITIAL_USERNAME",
        "password": "INITIAL_USER_PASSWORD"
      }
    }
    
  2. 集群创建操作完成后,通过向 projects.locations.clusters.instances.create 端点发送 POST 请求来创建主实例,并将 machineConfig.cpuCount 设置为 1(指定 1 以外的任何值都会导致创建失败)。在请求正文中选择连接字段:

    • 仅限公共 DNS:设置 "networkConfig": {"publicDnsEnabled": true} 并省略 "pscInstanceConfig"。
    • 仅限 Private Service Connect:省略 "publicDnsEnabled"(默认为 false)并设置 "pscInstanceConfig": {"allowedConsumerProjects": ["ALLOWED_PROJECT_ID"]}。
    • 公共 DNS 和 Private Service Connect:同时包含 "networkConfig": {"publicDnsEnabled": true} 和 "pscInstanceConfig": {"allowedConsumerProjects": ["ALLOWED_PROJECT_ID"]}。

    在使用任何请求数据之前,请先进行以下替换:

    • INSTANCE_ID:您要创建的主实例的 ID。
    • ALLOWED_PROJECT_ID(可选):允许为此实例创建 Private Service Connect 端点的Google Cloud 项目 ID 或项目编号。

    HTTP 方法和网址:

    POST https://alloydb.googleapis.com/v1beta/projects/PROJECT_ID/locations/REGION_ID/clusters/CLUSTER_ID/instances?instanceId=INSTANCE_ID
    

    请求 JSON 正文:

    {
      "instanceType": "PRIMARY",
      "availabilityType": "ZONAL",
      "machineConfig": {
        "cpuCount": 1
      },
      "networkConfig": {
        "publicDnsEnabled": true
      },
      "pscInstanceConfig": {
        "allowedConsumerProjects": [
          "ALLOWED_PROJECT_ID"
        ]
      }
    }
    

MCP

您可以使用 MCP 客户端或直接调用 AlloyDB 远程 MCP 服务器来创建 AlloyDB Express 集群及其主实例。

在 MCP 客户端中,您可以使用单个提示同时创建 AlloyDB Express 集群及其主实例。您的 MCP 客户端会自动调用 create_cluster、轮询 get_operation 并调用 create_instance:

Create an AlloyDB Express cluster named CLUSTER_ID in REGION_ID with a primary instance named INSTANCE_ID.

如需单独运行每个步骤或直接调用 MCP 工具,请按以下步骤操作:

  1. 如需创建 AlloyDB Express 集群,请在 MCP 客户端中输入提示,或调用 create_cluster MCP 工具,并将 express_config.enabled 设置为 true。

    在使用任何请求数据之前,请先进行以下替换:

    在 MCP 客户端中,您可以输入如下提示:

    Create an AlloyDB Express cluster named CLUSTER_ID in REGION_ID.
    

    工具调用参数:

    {
      "jsonrpc": "2.0",
      "id": 1,
      "method": "tools/call",
      "params": {
        "name": "create_cluster",
        "arguments": {
          "parent": "projects/PROJECT_ID/locations/REGION_ID",
          "cluster_id": "CLUSTER_ID",
          "express_config": {
            "enabled": true
          }
        }
      }
    }
    

    如需使 Private Service Connect 可从 VPC 网络访问,请在创建或更新主实例时将 "psc_instance_config" 中的使用方Google Cloud 项目列入许可清单。

  2. create_cluster 工具会返回一个长时间运行的操作。使用 get_operation MCP 工具轮询操作的状态,直到 done 为 true 且集群处于 READY 状态。

  3. 如需在 AlloyDB Express 集群中创建主实例,请在 MCP 客户端中输入提示,或调用 create_instance MCP 工具。选择连接设置:

    • 仅限公共 DNS:设置 "public_dns_enabled": true 并省略 "psc_instance_config"。

    • 仅限 Private Service Connect:省略 "public_dns_enabled"(默认为 false),并使用 "allowed_consumer_projects"(或使用 "psc_auto_connections" 指定 "consumer_project" 和 "consumer_network")设置 "psc_instance_config"。

    • 公共 DNS 和 Private Service Connect:同时设置 "public_dns_enabled": true 和 "psc_instance_config"。

    在使用任何请求数据之前,请先进行以下替换:

    • INSTANCE_ID:您要创建的主实例的 ID。

    • ALLOWED_PROJECT_ID:可选:允许为此实例创建 Private Service Connect 端点的Google Cloud 项目 ID 或项目编号。

    在 MCP 客户端中,您可以输入如下提示:

    Please create a primary instance named INSTANCE_ID in my AlloyDB Express cluster CLUSTER_ID.
    

    工具调用参数:

    {
      "jsonrpc": "2.0",
      "id": 2,
      "method": "tools/call",
      "params": {
        "name": "create_instance",
        "arguments": {
          "parent": "projects/PROJECT_ID/locations/REGION_ID/clusters/CLUSTER_ID",
          "instance_id": "INSTANCE_ID",
          "type": "PRIMARY",
          "public_dns_enabled": true,
          "psc_instance_config": {
            "allowed_consumer_projects": [
              "ALLOWED_PROJECT_ID"
            ]
          }
        }
      }
    }
    
  4. 使用 get_operation MCP 工具轮询实例创建操作,直到 done 为 true 且实例处于 READY 状态。

连接到 AlloyDB Express 实例

AlloyDB Express 支持以下入站数据库连接选项:

  • 公共 DNS(默认):提供可公开路由的 DNS 名称 (networkInfo.publicDnsName),以便您从 VPC 网络外部的客户端进行连接。
  • Private Service Connect:让您可以通过 Private Service Connect 端点从 VPC 网络内部私密连接到实例,而无需将数据库公开到公共互联网。

通过公共 DNS 连接

从 VPC 网络外部通过公共 DNS 进行连接时,您可以执行以下操作之一:

使用 PostgreSQL 客户端直接连接

默认情况下,公共 DNS 端点会拒绝所有直接客户端 IP 地址。您必须先将客户端 CIDR 块列入许可清单,然后才能直接连接到 psql。

  1. 在主实例上配置授权外部网络。

    您无法单独添加或移除个别授权外部网络。每次更新都会覆盖现有列表。提供您要允许的所有 CIDR 块的逗号分隔列表。

    控制台

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

      转到集群

    2. 在资源名称列中,点击 AlloyDB Express 集群的名称。

    3. 在概览页面中,前往集群中的实例,找到您的主实例,然后点击 实例操作 > 修改(或前往导航菜单中的连接,然后点击修改)。

    4. 在连接下,确保已启用公共连接。

    5. 在授权外部网络下,输入以英文逗号分隔的 IPv4 CIDR 范围列表(例如 203.0.113.0/24),或点击使用我的 IP 以添加当前机器的 /32 IPv4 地址。

    6. 点击更新实例。

    gcloud

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

    运行带有 --authorized-external-networks 标志的 gcloud alloydb instances update 命令:

    gcloud alloydb instances update INSTANCE_ID \
        --cluster=CLUSTER_ID \
        --region=REGION_ID \
        --authorized-external-networks=CIDR_RANGE1,CIDR_RANGE2 \
        --project=PROJECT_ID
    

    替换以下内容:

    • INSTANCE_ID:AlloyDB Express 主实例的 ID。
    • CLUSTER_ID:AlloyDB Express 集群的 ID。
    • REGION_ID:集群所在的区域。
    • CIDR_RANGE1、CIDR_RANGE2:采用 CIDR 表示法的 IPv4 地址范围的英文逗号分隔列表(例如 203.0.113.0/24)。
    • PROJECT_ID:您的Google Cloud 项目的 ID。

    REST

    使用 updateMask=networkConfig.authorizedExternalNetworks 向 projects.locations.clusters.instances.patch 端点发送 PATCH 请求。

    在使用任何请求数据之前,请先进行以下替换:

    • PROJECT_ID:您的Google Cloud 项目的 ID。
    • REGION_ID:集群所在的区域。
    • CLUSTER_ID:AlloyDB Express 集群的 ID。
    • INSTANCE_ID:AlloyDB Express 主实例的 ID。
    • CIDR_RANGE1、CIDR_RANGE2:采用 CIDR 表示法的 IPv4 地址范围(例如 203.0.113.0/24)。

    HTTP 方法和网址:

    PATCH https://alloydb.googleapis.com/v1beta/projects/PROJECT_ID/locations/REGION_ID/clusters/CLUSTER_ID/instances/INSTANCE_ID?updateMask=networkConfig.authorizedExternalNetworks
    

    请求 JSON 正文:

    {
      "networkConfig": {
        "authorizedExternalNetworks": [
          {
            "cidrRange": "CIDR_RANGE1"
          },
          {
            "cidrRange": "CIDR_RANGE2"
          }
        ]
      }
    }
    

    MCP

    在 MCP 客户端中输入提示,或使用 authorized_external_networks 字段调用 update_instance MCP 工具。

    在使用任何请求数据之前,请先进行以下替换:

    • PROJECT_ID:您的Google Cloud 项目的 ID。

    • REGION_ID:集群所在的区域。

    • CLUSTER_ID:AlloyDB Express 集群的 ID。

    • INSTANCE_ID:AlloyDB Express 主实例的 ID。

    • CIDR_RANGE1、CIDR_RANGE2:采用 CIDR 表示法的 IPv4 地址范围,例如 203.0.113.0/24。

    在 MCP 客户端中,您可以输入如下提示:

    Please update the AlloyDB instance INSTANCE_ID in cluster CLUSTER_ID to allow external connections from CIDR_RANGE1.
    

    工具调用参数:

    {
      "jsonrpc": "2.0",
      "id": 1,
      "method": "tools/call",
      "params": {
        "name": "update_instance",
        "arguments": {
          "instance": "projects/PROJECT_ID/locations/REGION_ID/clusters/CLUSTER_ID/instances/INSTANCE_ID",
          "authorized_external_networks": [
            "CIDR_RANGE1",
            "CIDR_RANGE2"
          ]
        }
      }
    }
    
  2. 检索实例的公共 DNS 名称:

    控制台

    1. 在 Google Cloud 控制台中,前往集群页面,然后点击您的 AlloyDB Express 集群名称。
    2. 前往连接(或查看概览页面上的主实例卡片),然后复制实例的公共 DNS 名称。

    gcloud

    运行 gcloud beta alloydb instances describe 命令以检索 networkInfo.publicDnsName 值:

    gcloud beta alloydb instances describe INSTANCE_ID \
        --cluster=CLUSTER_ID \
        --region=REGION_ID \
        --format="value(networkInfo.publicDnsName)" \
        --project=PROJECT_ID
    

    输出采用以下格式:

    IDENTIFIER.IDENTIFIER.REGION_ID.alloydb.s.cloud.goog
    

    在此输出中,IDENTIFIER 是系统生成的字母数字标识符。

    REST

    向 projects.locations.clusters.instances.get 端点发送 GET 请求,并从响应中读取 networkInfo.publicDnsName 字段:

    GET https://alloydb.googleapis.com/v1beta/projects/PROJECT_ID/locations/REGION_ID/clusters/CLUSTER_ID/instances/INSTANCE_ID
    

    MCP

    在 MCP 客户端中输入提示,或调用 get_instance MCP 工具,然后从响应中读取 networkInfo.publicDnsName 字段。

    在 MCP 客户端中,您可以输入如下提示:

    Please get the public DNS name of the AlloyDB instance INSTANCE_ID in cluster CLUSTER_ID.
    

    工具调用参数:

    {
      "jsonrpc": "2.0",
      "id": 1,
      "method": "tools/call",
      "params": {
        "name": "get_instance",
        "arguments": {
          "name": "projects/PROJECT_ID/locations/REGION_ID/clusters/CLUSTER_ID/instances/INSTANCE_ID"
        }
      }
    }
    
  3. 使用标准 PostgreSQL 连接 URI 和实例的公共 DNS 名称连接到数据库:

    psql postgresql://USERNAME@PUBLIC_DNS_NAME/DATABASE_NAME

    替换以下内容:

    • USERNAME:PostgreSQL 数据库用户名(例如 postgres)。
    • PUBLIC_DNS_NAME:AlloyDB Express 实例的公共 DNS 名称(例如 1a2b3c4d-5e6f-7a8b-9c0d-1e2f3a4b5c6d.a.us-central1.alloydb.s.cloud.goog)。
    • DATABASE_NAME:要连接的数据库名称(默认数据库为 postgres)。
  4. 出现提示时,输入数据库用户的密码。

使用 gcloud CLI 或 Auth Proxy 进行连接

如需通过公共 DNS 进行连接,而不配置授权外部网络,您可以使用 gcloud beta alloydb connect 命令或带有 --public-ip 标志的独立 Auth Proxy 客户端 (alloydb-auth-proxy)。虽然 AlloyDB Express 显示的是公共 DNS 名称,而不是公共 IP 地址,但控制平面会为实例预配底层公共连接,当您指定 --public-ip 时,Auth 代理会自动解析该连接。

如需启动本地 Auth Proxy 实例并使用 gcloud CLI 打开 psql 会话,请运行带有 --public-ip 标志的 gcloud beta alloydb connect 命令:

gcloud beta alloydb connect INSTANCE_ID \
    --cluster=CLUSTER_ID \
    --region=REGION_ID \
    --public-ip \
    --user=USERNAME \
    --database=DATABASE_NAME \
    --project=PROJECT_ID

替换以下内容:

  • INSTANCE_ID:AlloyDB Express 主实例的 ID。
  • CLUSTER_ID:AlloyDB Express 集群的 ID。
  • REGION_ID:集群所在的区域。
  • USERNAME:数据库用户名(默认为 postgres)。
  • DATABASE_NAME:数据库名称(默认为 postgres)。
  • PROJECT_ID:您的 Google Cloud 项目的 ID。

如需详细了解如何使用 gcloud CLI 进行连接,包括 IAM 数据库身份验证 (--auto-iam-authn),请参阅使用 gcloud CLI 进行连接。

或者,您也可以下载并运行带有 --public-ip 标志的独立 Auth Proxy 客户端:

./alloydb-auth-proxy \
    "projects/PROJECT_ID/locations/REGION_ID/clusters/CLUSTER_ID/instances/INSTANCE_ID" \
    --public-ip

如需了解如何通过独立的 Auth Proxy 客户端进行下载、配置和连接,请参阅使用 AlloyDB Auth Proxy 连接。

通过 Private Service Connect 连接

如需从 VPC 网络内部建立专用连接,而不将数据库公开给公共互联网,您可以在 AlloyDB Express 实例上配置 Private Service Connect。您可以直接从 VPC 网络内的客户端连接到 Private Service Connect 端点,也可以使用 Auth 代理进行连接。如需详细了解如何连接到 Private Service Connect,请参阅使用 Private Service Connect 连接到实例。

按照这些说明操作 AlloyDB Express 时,请按照创建 AlloyDB Express 集群和实例中的说明创建集群和 1 vCPU 单可用区主实例,并启用 Private Service Connect;AlloyDB Express 支持与单个单可用区主实例建立入站 Private Service Connect 连接。

修改 AlloyDB Express 实例

您可以更新 AlloyDB Express 主实例的 CPU 数量(1 个 vCPU 或 2 个 vCPU)或数据库标志。

控制台

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

    转到集群

  2. 在资源名称列中,点击 AlloyDB Express 集群的名称。

  3. 在概览页面的集群中的实例部分,找到您的主实例,然后点击修改主实例(或点击 实例操作 > 修改)。

  4. 在修改主实例页面上,更新实例设置:

    • 在机器下的机器类型列表中,选择 1 个 vCPU、4 GB 或 2 个 vCPU、8 GB。
    • 可选:如需配置数据库标志,请展开标志(或点击显示高级选项并展开标志),然后点击添加标志。从新增数据库标志列表中选择一个标志,提供一个值,然后点击完成。
  5. 点击更新实例。

gcloud

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

如需通过更改实例的 CPU 数量(1 或 2)来扩缩实例,或更新其数据库标志,请运行 gcloud alloydb instances update 命令:

gcloud alloydb instances update INSTANCE_ID \
    --cluster=CLUSTER_ID \
    --region=REGION_ID \
    --cpu-count=CPU_COUNT \
    --database-flags=FLAGS \
    --project=PROJECT_ID

替换以下内容:

  • INSTANCE_ID:AlloyDB Express 主实例的 ID。
  • CLUSTER_ID:AlloyDB Express 集群的 ID。
  • REGION_ID:集群所在的区域。
  • CPU_COUNT:实例的 vCPU 数量(1 表示 1 个 vCPU、4 GB RAM,2 表示 2 个 vCPU、8 GB RAM)。
  • FLAGS(可选):以逗号分隔列表形式提供的数据库标志和值,格式为 FLAG_NAME=VALUE。如果您仅更新 CPU 数量,请省略 --database-flags 标志。如需详细了解受支持的标志,请参阅支持的数据库标志。
  • PROJECT_ID:您的Google Cloud 项目的 ID。
  • --enable-public-dns 或 --no-enable-public-dns:为实例启用或停用公共 DNS。此标志仅在 gcloud beta (gcloud beta alloydb instances update) 中可用。
  • --allowed-psc-projects=[ALLOWED_PSC_PROJECTS,...]:更新允许为实例创建 Private Service Connect 端点的使用方 Google Cloud 项目 ID 或项目编号的英文逗号分隔列表。

REST

如需更新 AlloyDB Express 主实例的 CPU 数量或数据库标志,请向 projects.locations.clusters.instances.patch 端点发送 PATCH 请求,并在 updateMask 查询参数中指定要更新的字段。

在使用任何请求数据之前,请先进行以下替换:

  • PROJECT_ID:您的Google Cloud 项目的 ID。
  • REGION_ID:集群所在的区域。
  • CLUSTER_ID:AlloyDB Express 集群的 ID。
  • INSTANCE_ID:AlloyDB Express 主实例的 ID。
  • CPU_COUNT:实例的 vCPU 数量(1 或 2)。
  • FLAG_NAME 和 FLAG_VALUE(可选):要设置的数据库标志名称和值。如果您仅更新 CPU 数量,请设置 updateMask=machineConfig.cpuCount 并在请求正文中省略 databaseFlags。

HTTP 方法和网址:

PATCH https://alloydb.googleapis.com/v1beta/projects/PROJECT_ID/locations/REGION_ID/clusters/CLUSTER_ID/instances/INSTANCE_ID?updateMask=machineConfig.cpuCount,databaseFlags

请求 JSON 正文:

{
  "machineConfig": {
    "cpuCount": CPU_COUNT
  },
  "databaseFlags": {
    "FLAG_NAME": "FLAG_VALUE"
  }
}

MCP

如需更新 AlloyDB Express 主实例的 CPU 数量或数据库标志,请在 MCP 客户端中输入提示,或调用 update_instance MCP 工具。

在使用任何请求数据之前,请先进行以下替换:

  • PROJECT_ID:您的Google Cloud 项目的 ID。

  • REGION_ID:集群所在的区域。

  • CLUSTER_ID:AlloyDB Express 集群的 ID。

  • INSTANCE_ID:AlloyDB Express 主实例的 ID。

  • CPU_COUNT:实例的 vCPU 数量(1 或 2)。

  • FLAG_NAME 和 FLAG_VALUE(可选):要设置的数据库标志名称和值。如果您仅更新 CPU 数量,请从 arguments 中省略 database_flags。

在 MCP 客户端中,您可以输入如下提示:

Please update the AlloyDB instance INSTANCE_ID in cluster CLUSTER_ID to CPU_COUNT vCPUs.

工具调用参数:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "update_instance",
    "arguments": {
      "instance": "projects/PROJECT_ID/locations/REGION_ID/clusters/CLUSTER_ID/instances/INSTANCE_ID",
      "cpu_count": CPU_COUNT,
      "database_flags": {
        "FLAG_NAME": "FLAG_VALUE"
      }
    }
  }
}

查看 AlloyDB Express 集群和实例详细信息

您可以查看 AlloyDB Express 集群列表,查看特定 AlloyDB Express 集群或实例的详细信息,以及查看集群的计算和存储空间用量。

如需了解详情,请参阅查看集群列表、查看集群详情和查看实例详情。

控制台

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

    转到集群

    在资源名称列中,AlloyDB Express 集群的名称旁边会显示 Express 标记。

  2. 如需查看有关集群及其主实例的详细信息,请点击资源名称列中的集群名称。

  3. 在概览页面上,查看集群详情下的集群详情(包括集群 ID 旁边的 Express 标记,以及已用总存储空间,上限为 20 GB),以及集群中的实例下的主实例详情。

gcloud

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

  • 如需查看项目中的集群列表,请运行 gcloud alloydb clusters list 命令:

    gcloud alloydb clusters list --project=PROJECT_ID
    
  • 如需查看特定集群的详细信息,请运行 gcloud alloydb clusters describe 命令:

    gcloud alloydb clusters describe CLUSTER_ID \
        --region=REGION_ID \
        --project=PROJECT_ID
    
  • 如需查看特定实例的详细信息,请运行 gcloud alloydb instances describe 命令:

    gcloud alloydb instances describe INSTANCE_ID \
        --cluster=CLUSTER_ID \
        --region=REGION_ID \
        --project=PROJECT_ID
    

替换以下内容:

  • PROJECT_ID:您的Google Cloud 项目的 ID。
  • CLUSTER_ID:AlloyDB Express 集群的 ID。
  • REGION_ID:集群所在的区域。
  • INSTANCE_ID:AlloyDB Express 主实例的 ID。

REST

在使用任何请求数据之前,请先进行以下替换:

  • PROJECT_ID:您的Google Cloud 项目的 ID。
  • REGION_ID:集群所在的区域。
  • CLUSTER_ID:AlloyDB Express 集群的 ID。
  • INSTANCE_ID:AlloyDB Express 主实例的 ID。

  • 如需查看某个区域中的集群列表,请向 projects.locations.clusters.list 端点发送 GET 请求:

    GET https://alloydb.googleapis.com/v1beta/projects/PROJECT_ID/locations/REGION_ID/clusters
    
  • 如需查看集群的详细信息,请向 projects.locations.clusters.get 端点发送 GET 请求:

    GET https://alloydb.googleapis.com/v1beta/projects/PROJECT_ID/locations/REGION_ID/clusters/CLUSTER_ID
    
  • 如需查看实例的详细信息,请向 projects.locations.clusters.instances.get 端点发送 GET 请求:

    GET https://alloydb.googleapis.com/v1beta/projects/PROJECT_ID/locations/REGION_ID/clusters/CLUSTER_ID/instances/INSTANCE_ID
    

MCP

在使用任何请求数据之前,请先进行以下替换:

  • PROJECT_ID:您的Google Cloud 项目的 ID。

  • REGION_ID:集群所在的区域。

  • CLUSTER_ID:AlloyDB Express 集群的 ID。

  • INSTANCE_ID:AlloyDB Express 主实例的 ID。

  • 如需查看某个区域中的集群列表,请在 MCP 客户端中输入提示,或调用 list_clusters MCP 工具。

    在 MCP 客户端中,您可以输入如下提示:

    Please list the AlloyDB clusters in REGION_ID in project PROJECT_ID.
    

    工具调用参数:

    {
      "jsonrpc": "2.0",
      "id": 1,
      "method": "tools/call",
      "params": {
        "name": "list_clusters",
        "arguments": {
          "parent": "projects/PROJECT_ID/locations/REGION_ID"
        }
      }
    }
    
  • 如需查看集群的详细信息,请在 MCP 客户端中输入提示,或调用 get_cluster MCP 工具。

    在 MCP 客户端中,您可以输入如下提示:

    Please show the details of the AlloyDB cluster CLUSTER_ID in REGION_ID.
    

    工具调用参数:

    {
      "jsonrpc": "2.0",
      "id": 1,
      "method": "tools/call",
      "params": {
        "name": "get_cluster",
        "arguments": {
          "name": "projects/PROJECT_ID/locations/REGION_ID/clusters/CLUSTER_ID"
        }
      }
    }
    
  • 如需查看实例的详细信息,请在 MCP 客户端中输入提示,或调用 get_instance MCP 工具。

    在 MCP 客户端中,您可以输入如下提示:

    Please show the details of the AlloyDB instance INSTANCE_ID in cluster CLUSTER_ID.
    

    工具调用参数:

    {
      "jsonrpc": "2.0",
      "id": 1,
      "method": "tools/call",
      "params": {
        "name": "get_instance",
        "arguments": {
          "name": "projects/PROJECT_ID/locations/REGION_ID/clusters/CLUSTER_ID/instances/INSTANCE_ID"
        }
      }
    }
    

查看计算和存储空间用量

如需查看 AlloyDB Express 集群和主实例使用的存储空间和计算资源,请使用 Google Cloud 控制台或 Cloud Monitoring:

  • 在 Google Cloud 控制台中,打开集群的概览页面:

    • 已用存储空间:在集群详情下,查看已用存储空间总量,了解集群在 20 GB 限制内使用了多少存储空间。
    • 计算和连接:在概览页面上查看 CPU 利用率和活跃连接图表,或点击导航菜单中的系统数据分析以查看详细的 CPU、内存和存储指标。
  • 在 Cloud Monitoring Metrics Explorer 中,查询 alloydb.googleapis.com/Cluster 和 alloydb.googleapis.com/Instance 受监控的资源类型的以下指标:

    • 已用存储空间:alloydb.googleapis.com/cluster/storage/usage
    • CPU 利用率:alloydb.googleapis.com/instance/cpu/average_utilization 和 alloydb.googleapis.com/instance/cpu/maximum_utilization
    • 活跃连接数:alloydb.googleapis.com/database/postgresql/backends

删除 AlloyDB Express 集群或实例

当您不再需要 AlloyDB Express 主实例或集群时,可以将其删除。

如需了解详情,请参阅删除实例和删除集群。

控制台

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

    转到集群

  2. 在资源名称列中,点击 AlloyDB Express 集群的名称。

  3. 在概览页面上,删除主实例或集群:

    • 如需删除主实例,请前往集群中的实例部分,点击 实例操作 > 删除,在对话框中输入实例 ID,然后点击删除。
    • 如需删除集群,请先删除集群中的主实例,然后点击删除集群,在删除集群对话框中输入集群 ID,然后点击删除。

gcloud

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

  • 如需删除实例,请运行 gcloud alloydb instances delete 命令:

    gcloud alloydb instances delete INSTANCE_ID \
        --cluster=CLUSTER_ID \
        --region=REGION_ID \
        --project=PROJECT_ID
    
  • 如需删除集群,请运行 gcloud alloydb clusters delete 命令。如果集群仍包含其主实例,请添加 --force 标志,以同时删除主实例和集群:

    gcloud alloydb clusters delete CLUSTER_ID \
        --region=REGION_ID \
        --force \
        --project=PROJECT_ID
    

替换以下内容:

  • INSTANCE_ID:AlloyDB Express 主实例的 ID。
  • CLUSTER_ID:AlloyDB Express 集群的 ID。
  • REGION_ID:集群所在的区域。
  • PROJECT_ID:您的Google Cloud 项目的 ID。

REST

在使用任何请求数据之前,请先进行以下替换:

  • PROJECT_ID:您的Google Cloud 项目的 ID。
  • REGION_ID:集群所在的区域。
  • CLUSTER_ID:AlloyDB Express 集群的 ID。
  • INSTANCE_ID:AlloyDB Express 主实例的 ID。

  • 如需删除实例,请向 projects.locations.clusters.instances.delete 端点发送 DELETE 请求:

    DELETE https://alloydb.googleapis.com/v1beta/projects/PROJECT_ID/locations/REGION_ID/clusters/CLUSTER_ID/instances/INSTANCE_ID
    
  • 如需删除集群(包括指定 force=true 时的主要实例),请向 projects.locations.clusters.delete 端点发送 DELETE 请求:

    DELETE https://alloydb.googleapis.com/v1beta/projects/PROJECT_ID/locations/REGION_ID/clusters/CLUSTER_ID?force=true
    

将 AlloyDB Express 集群升级到 AlloyDB

您可以将 AlloyDB Express 集群就地升级为 AlloyDB 集群。

升级会保留数据库数据、架构、扩展程序、用户凭据、网络配置(包括公共 DNS 名称和 Private Service Connect 端点)以及主实例 vCPU 数量。

以下列表介绍了在升级过程中发生变化的资源和设置:

  • CPU 数量、内存比率和计算容量:您的实例会保留其当前的 vCPU 数量(1 个 vCPU 或 2 个 vCPU),并从 AlloyDB Express 的 1:4 vCPU 与内存比率(4 GB 或 8 GB RAM)升级到 AlloyDB 的 1:8 vCPU 与内存比率(1 个 vCPU 对应 8 GB RAM,或 2 个 vCPU 对应 16 GB RAM)。升级后,您最多可以将计算资源扩缩到 288 个 vCPU。
    • 升级 1 vCPU 实例时,您只能选择支持 C4A 机器系列的区域。如需了解受支持的国家/地区,请参阅 C4A 的区域可用性。
    • 如果您的 AlloyDB Express 实例不在支持 C4A 机器类型的区域中,则必须先将主实例更新为 2 vCPU 配置,然后再进行升级。在 Google Cloud 控制台中,如果您在不受支持的区域中点击 1 vCPU 实例的升级,系统会提示您先将实例大小调整为 2 vCPU。
  • 预配计算和结算:升级会停用缩减至零计算,并且您的实例会作为常年运行的 AlloyDB 实例运行,并按 AlloyDB 费率计费。
  • 存储空间容量:升级后,20 GB 的存储空间上限将被移除。存储空间可扩容到每个集群 16 TiB 的默认配额,您可以申请增加存储空间配额,以扩容到 128 TiB。
  • 企业级功能:升级后可解锁区域级高可用性 (HA),该功能受 99.99% 正常运行时间服务等级协议 (SLA) 的保障。它还支持读取池实例、跨区域复制、持续备份和恢复,以及自动和按需备份。

如需将 AlloyDB Express 集群升级到 AlloyDB 集群,请按照以下步骤操作:

控制台

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

    转到集群

  2. 在资源名称列中,点击 AlloyDB Express 集群的名称。

  3. 在概览页面的集群详情下,找到集群 ID,然后点击升级。

    如果您的主要实例是位于不支持 C4A 机器系列的区域中的 1 vCPU 实例,则系统会显示一条消息:

    Upgrading to AlloyDB requires a 2 vCPU instance in the REGION_ID region. Resize your instance to 2 vCPUs first.

    如需将实例大小调整为 2 个 vCPU,请点击修改实例。调整实例大小后,再次点击升级。

  4. 在从 AlloyDB Express 升级窗格中,输入您的集群 ID 以确认升级,然后点击确认。

gcloud

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

如需将 AlloyDB Express 集群升级到 AlloyDB 集群,请运行带有 --no-enable-express 标志的 gcloud beta alloydb clusters update 命令:

gcloud beta alloydb clusters update CLUSTER_ID \
    --region=REGION_ID \
    --no-enable-express \
    --project=PROJECT_ID

替换以下内容:

  • CLUSTER_ID:AlloyDB Express 集群的 ID。
  • REGION_ID:集群所在的区域。
  • PROJECT_ID:您的Google Cloud 项目的 ID。

如果您的主实例是位于不支持 C4A 机器系列的区域中的 1 vCPU 实例,则该命令会失败并显示以下错误:

Upgrading to AlloyDB is not supported for 1-vCPU instances in location "REGION_ID". Please update the instance to use 2 vCPUs and try the upgrade again.

如需解决此错误,请将主实例更新为 2 个 vCPU (--cpu-count=2),然后再次运行升级命令。

REST

如需将 AlloyDB Express 集群升级到 AlloyDB 集群,请使用 updateMask=expressConfig.enabled 向 projects.locations.clusters.patch 端点发送 PATCH 请求,并将 expressConfig.enabled 设置为 false。

在使用任何请求数据之前,请先进行以下替换:

  • PROJECT_ID:您的Google Cloud 项目的 ID。
  • REGION_ID:集群所在的区域。
  • CLUSTER_ID:AlloyDB Express 集群的 ID。

HTTP 方法和网址:

PATCH https://alloydb.googleapis.com/v1beta/projects/PROJECT_ID/locations/REGION_ID/clusters/CLUSTER_ID?updateMask=expressConfig.enabled

请求 JSON 正文:

{
  "expressConfig": {
    "enabled": false
  }
}

如果您的主要实例是 1 vCPU 实例,且位于不支持 C4A 机器系列的区域,则请求会失败,并显示以下错误:

Upgrading to AlloyDB is not supported for 1-vCPU instances in location "REGION_ID". Please update the instance to use 2 vCPUs and try the upgrade again.

如需解决此错误,请将主实例更新为 2 个 vCPU ("machineConfig": {"cpuCount": 2}),然后再次发送升级请求。

后续步骤