在应用设计中心内配置 Cloud SQL (PostgreSQL)

Cloud SQL (PostgreSQL) 是一项全代管式数据库服务,可帮助您在 Google Cloud上设置、维护、管理和控制关系型数据库。 详情请参阅以下内容:

本文档介绍了使用应用设计中心创建 Cloud SQL (PostgreSQL) 实例时可以配置的连接和参数。配置参数基于 terraform-google-sql-db Terraform 模块。

组件连接

下表列出了可连接到 Cloud SQL (PostgreSQL) 实例的组件,以及对应用及其生成的 Terraform 代码的相应更新。

关联的组成部分

申请动态

背景信息

Compute Engine 实例模板

  • Compute Engine 实例可以连接到 Cloud SQL (PostgreSQL) 实例,并向其读取和写入数据。
  • Cloud SQL 连接元数据已添加到 Compute Engine 实例模板。
  • roles/cloudsql.instanceUserroles/cloudsql.client 角色将添加到 Compute Engine 实例模板服务账号中。
  • Compute Engine 服务账号已作为 IAM 用户添加到 Cloud SQL 实例。
从 Compute Engine 连接
Secret Manager
  • Secret Manager Secret Data 字段包含默认用户的密码。
使用 Secret Manager 处理 Cloud SQL 中的 Secret

服务账号

  • 服务账号可以连接到 Cloud SQL (PostgreSQL) 实例。
  • roles/cloudsql.instanceUserroles/cloudsql.client 角色已添加到该服务账号。
  • 服务账号 IAM 信息已添加到 Cloud SQL 实例。
角色和权限

Cloud Run

  • Cloud Run 服务可以读取和写入 Cloud SQL (PostgreSQL) 实例中的数据。
  • Cloud SQL 连接元数据已添加到 Cloud Run 服务中。
  • roles/cloudsql.instanceUserroles/cloudsql.client 角色已添加到 Cloud Run 服务账号。
  • Cloud Run 服务账号已作为 IAM 用户添加到 Cloud SQL 实例。
从 Cloud Run 连接

必需的配置参数

如果您的模板包含 Cloud SQL (PostgreSQL) 组件,您必须先配置以下参数,然后才能进行部署。

参数名称

说明和限制条件信息

背景信息

项目 ID

您要部署 Cloud SQL 资源的项目。

配置组件

名称

name 创建 PostgreSQL 实例

数据库版本

databaseVersion 创建 PostgreSQL 实例

区域

区域 管理实例位置

可选配置参数

以下参数为可选参数。如需显示高级参数,请在配置区域中选择显示高级字段

功能

参数名称

说明和限制条件信息

背景信息

可用区

gceZone 管理实例位置

版本

版本 版本

可用性类型

availabilityType Cloud SQL 中的可用性

启用默认数据库

如果选择此选项,则创建默认数据库。在 Db Name 字段中,输入默认数据库的名称。

在 Cloud SQL 实例上创建数据库

启用默认用户

如果选择此项,则创建默认用户。为默认用户输入用户名用户密码

默认 PostgreSQL 用户

root 密码

rootPassword

创建实例时的初始 root 密码。

数据库删除政策

如需允许放弃数据库而非删除数据库,请输入 ABANDON

如果除了 cloudsqlsuperuser 之外的用户也拥有访问权限,则无法删除 PostgreSQL 数据库。

数据缓存已启用

数据缓存 数据缓存概览

机器

为您的实例选择机器系列和类型。您选择的选项会决定可用的存储类型和配置选项。实例创建完成后,您便无法更改机器系列。

机器系列概览

磁盘自动调整大小

磁盘自动调整大小

storageAutoResize 启用存储空间自动扩容功能

磁盘自动调整大小限制

storageAutoResizeLimit 存储空间自动扩容上限

磁盘大小

dataDiskSizeGb 存储空间容量

磁盘类型

dataDiskType 存储类型

定价方案

pricingPlan SqlPricingPlan

备份配置

已启用

已启用 创建 PostgreSQL 实例

开始时间

BackupConfiguration

创建 PostgreSQL 实例

区域

location 自定义备份位置

可用区

location 自定义备份位置

已启用时间点恢复

pointInTimeRecoveryEnabled pointInTimeRecoveryEnabled

交易日志保留天数

BackupConfiguration 日志保留期限

保留的备份

transactionLogRetentionDays 日志和磁盘使用量

留存单元

retentionUnit retentionUnit

IP 配置

已获授权的网络密钥

authorizedNetworks[] 使用授权网络进行授权

已获授权的网络值

authorizedNetworks[] 使用授权网络进行授权

已启用 IPv4

ipv4Enabled 配置公共 IP

专用网络

privateNetwork 配置专用 IP

SSL 模式

sslMode SSL 模式

分配 IP 范围

allocatedIpRange 为服务分配的 IP 地址范围

为 Google Cloud 服务启用专用路径

Google Cloud 服务的专用路径 创建支持专用服务访问通道和 Private Service Connect 的实例

已启用 PSC

psc_enabled Private Service Connect 概览

PSC 允许的使用方项目

allowedConsumerProjects[] 创建支持专用服务访问通道和 Private Service Connect 的实例

维护版本

maintenanceVersion 自助维护

删除防护

如果选择此选项,则无法删除 Cloud SQL 实例。 防止删除实例

数据库标志

名称

databaseFlags 配置数据库标志

databaseFlags 配置数据库标志

用户删除政策

如需允许用户被舍弃而非删除,请输入 ABANDON

如果 PostgreSQL 用户已被授予 SQL 角色,则无法将其删除。

其他用户

名称

name PostgreSQL 用户和角色简介

密码

输入密码,或选择随机密码以生成密码。

PostgreSQL 用户和角色简介

其他数据库

名称

name 创建和管理数据库

整理

排序规则 创建和管理数据库

主实例名称

masterInstanceName 创建读取副本

实例类型

instanceType SqlInstanceType

随机实例名称

在实例名称的末尾添加随机后缀。

random_instance_name

次要区域

副本实例的首选可用区。

secondaryZone

遵循 GAE 应用

要遵循的 App Engine 应用。必须与 Cloud SQL 实例位于同一区域。

followGaeApplication

激活政策

activationPolicy 激活政策

已启用删除防护

deletionProtectionEnabled 防止删除实例

已启用读取副本删除防护

如需阻止 Terraform 删除副本 SQL 实例,请选中相应复选框。

为读取副本考虑删除保护

维护窗口

维护时段天数

Cloud SQL 实例维护简介

维护时段小时数

小时 Cloud SQL 实例维护简介

维护窗口更新轨道

updateTrack Cloud SQL 实例维护简介

用户标签

Cloud SQL 实例的键标签

userLabels

Cloud SQL 实例的值标签

userLabels

拒绝维护期

结束日期

endDate 配置拒绝维护期

开始日期

startDate 配置拒绝维护期

时间

时间 配置拒绝维护期

数据洞见配置

每分钟查询计划数

queryPlansPerMinute 使用 Query Insights 提高查询性能

查询字符串长度

queryStringLength 使用 Query Insights 提高查询性能

记录应用标记

recordApplicationTags 启用查询数据分析

记录客户端地址

recordClientAddress 启用查询数据分析

密码验证政策配置

最短时长

minLength 设置密码政策

复杂性

复杂程度 设置密码政策

重用间隔

reuseInterval 设置密码政策

不允许的用户名子字符串

disallowUsernameSubstring 设置密码政策

密码更改间隔

passwordChangeInterval 设置密码政策

读取副本数

名称

read_replicas 只读副本

名称覆盖

用于替换默认只读副本名称的字符串。 read_replicas

只读副本名称后缀

要添加到读取实例名称中的可选后缀。

只读副本

数据库字符集

字符集 在 Cloud SQL 实例上创建数据库

数据库排序规则

排序规则 在 Cloud SQL 实例上创建数据库

IAM 用户

ID

IAM 用户的 ID。

IAM 身份验证

电子邮件

IAM 用户的电子邮件地址。

将单个 IAM 用户或服务账号添加到 Cloud SQL 实例

类型

type 将单个 IAM 用户或服务账号添加到 Cloud SQL 实例

创建超时

用于限制长时间数据库创建的可选超时时间。

create_timeout

更新超时

用于限制长时间数据库更新的可选超时时间。

update_timeout

删除超时

用于限制长时间数据库删除的可选超时时间。

delete_timeout

加密密钥名称

encryption_key_name 客户端加密功能简介

读取副本删除防护

如果选中,则阻止 Terraform 删除副本 SQL 实例。

deletion_protection

启用随机密码特殊字符

如果选中,则允许在生成的随机密码中使用特殊字符。

enable_random_password_special

连接器强制执行

connectorEnforcement Cloud SQL 语言连接器概览

启用 Google 机器学习集成

enable_google_ml_integration 使用 Cloud SQL 构建生成式 AI 应用

数据库集成角色

默认数据库实例服务账号与 Google Cloud 服务集成所需的角色。

准备工作