本页面介绍如何使用 Database Service 在 Google Distributed Cloud (GDC) 气隙环境中创建和管理数据库。
授权和角色
用户必须获得授权才能访问 Database Service。如需使用 GDC 控制台和 Distributed Cloud CLI 访问 Database Service,您都需要获得授权。
以下角色会向用户授予权限:
- 项目查看者 (
project-viewer) - 拥有此角色的用户可以访问 GDC 控制台和 Distributed Cloud CLI。
- 项目数据库查看者(
project-db-viewer) - 拥有此角色的用户可以查看数据库集群。
- 项目数据库编辑者 (
project-db-editor) - 拥有此角色的用户具有
project-db-viewer授予的功能,还可以修改数据库集群。 - 项目数据库管理员 (
project-db-admin) - 拥有此角色的用户具有
project-db-editor授予的功能,还可以创建和删除数据库集群。 - 项目存储分区对象查看者 (
project-bucket-object-viewer) - 拥有此角色的用户可以使用 GDC 控制台中 Database Service 界面中的存储浏览器。此界面用于指定要导入数据库的文件,以及指定数据库导出生成文件的目标位置。
- 项目监控查看者 (
project-monitoring-viewer) - 拥有此角色的用户可以访问监控实例。如需详细了解如何观察 Database Service 指标,请参阅观察指标。您应仅向需要访问监控实例的用户授予此角色。
- 项目维护政策管理员 (
project-mp-admin) - 拥有此角色的用户具有
project_mp_editor和project_mpb_editor角色授予的功能,因此可以创建、修改和删除维护政策和维护政策绑定。 - 项目维护政策查看者 (
project-mp-viewer) - 拥有此角色的用户可以查看维护政策。
- 项目维护政策编辑者 (
project-mp-editor) - 拥有此角色的用户具有
project_mp_viewer角色授予的功能,还可以创建、修改和删除维护政策。 - 项目维护政策绑定查看者 (
project-mpb-viewer) - 拥有此角色的用户可以查看维护政策绑定。
- 项目维护政策绑定编辑者 (
project-mpb-editor) - 拥有此角色的用户具有
project_mpb_viewer角色授予的功能,还可以创建、修改和删除维护政策绑定。
可用的数据库引擎
以下数据库引擎可在 GDC 环境中使用:
| 数据库 | 版本 | |-----------------------------|----------| | PostgreSQL | 13、14、15 |
创建数据库集群
拥有项目数据库管理员角色的用户必须执行以下步骤。使用 GDC 控制台或 Distributed Cloud CLI 创建数据库集群。
控制台
- 在主菜单中,选择 Database Service 。
- 点击创建数据库集群 。
在选择数据库引擎 对话框中,选择一个 数据库引擎。
在配置集群 对话框中,指定集群 ID、密码和数据库版本。您可以启用备份并配置备份保留期限。
您可以为数据库集群启用高可用性。如果启用,Database Service 会在与主实例相同的可用区中预配备用实例,以防发生故障。如需了解详情,请参阅高可用性 。
在配置主实例 对话框中,指定数据库集群主实例的 CPU、内存和存储容量。我们建议您选择足够的内存来容纳最大的表。
点击创建 。创建数据库集群可能需要几分钟时间。 在集群概览 页面中检查集群的状态。当集群准备就绪时, 状态会从“正在创建”变为“就绪”。
gdcloud
在使用 Distributed Cloud CLI 之前, 请先安装并初始化它。 然后,使用您的 组织进行身份验证。
运行以下命令以创建数据库集群:
gdcloud database clusters create CLUSTER_NAME \ --database-version DB_VERSION \ --admin-password ADMIN_PASSWORD执行以下变量替换操作:
- 将
CLUSTER_NAME替换为新集群的名称。 - 将
DB_VERSION替换为新集群的版本字符串。例如,POSTGRESQL_13、POSTGRESQL_14或POSTGRESQL_15 - 将
ADMIN_PASSWORD替换为新集群的管理员密码。
- 将
如需详细了解如何为数据库集群配置 CPU、内存和存储资源、配置备份、启用高可用性以及其他可用选项,请运行以下命令:
gdcloud database clusters create --help
API
apiVersion: v1
kind: Secret
metadata:
name: db-pw-DBCLUSTER_NAME
namespace: USER_PROJECT
type: Opaque
data:
DBCLUSTER_NAME: "BASE64_PASSWORD"
---
apiVersion: postgresql.dbadmin.gdc.goog/v1
kind: DBCluster
metadata:
name: DBCLUSTER_NAME
namespace: USER_PROJECT
spec:
primarySpec:
adminUser:
passwordRef:
name: db-pw-DBCLUSTER_NAME
version: "DB_VERSION"
resources:
memory: DB_MEMORY
cpu: DB_CPU
disks:
- name: DataDisk
size: DB_DATA_DISK
执行以下变量替换操作:
DBCLUSTER_NAME,数据库集群的名称。USER_PROJECT,将在其中创建数据库集群的用户项目的名称。BASE64_PASSWORD,数据库管理员密码的 base64 编码。DB_VERSION,数据库引擎的版本。DB_MEMORY,分配给数据库集群的内存量,例如5Gi。DB_CPU,分配给数据库集群的 CPU 数量,例如2。DB_DATA_DISK,分配给数据库集群的空间量,例如10 Gi。