本页面介绍如何使用数据库服务在 Google Distributed Cloud (GDC) 空气隔离环境中创建和管理数据库。
授权和角色
用户必须获得授权才能访问数据库服务。无论是使用 GDC 控制台还是 Distributed Cloud CLI,都需要获得授权才能访问数据库服务。
以下角色可向用户授予权限:
- Project Viewer (
project-viewer) - 拥有此角色的用户可以访问 GDC 控制台和 Distributed Cloud CLI。
- Project DB Viewer(
project-db-viewer) - 具有此角色的用户可以查看数据库集群。
- Project DB Editor (
project-db-editor) - 具有此角色的用户拥有
project-db-viewer授予的权限,还可以修改数据库集群。 - Project DB Admin (
project-db-admin) - 具有此角色的用户拥有
project-db-editor授予的功能,还可以创建和删除数据库集群。 - Project Bucket Object Viewer (
project-bucket-object-viewer) - 拥有此角色的用户可以使用 GDC 控制台中数据库服务界面中的存储空间浏览器。此接口用于指定数据库导入的文件,以及指定数据库导出生成的文件的目标位置。
- Project Monitoring Viewer (
project-monitoring-viewer) - 具有此角色的用户可以访问监控实例。如需详细了解如何观测数据库服务指标,请参阅观测指标。您应仅向需要访问监控实例的用户授予此角色。
- Project Maintenance Policy Admin (
project-mp-admin) - 具有此角色的用户拥有
project_mp_editor和project_mpb_editor角色赋予的功能,因此可以创建、修改和删除维护政策和维护政策绑定。 - Project Maintenance Policy Viewer (
project-mp-viewer) - 具有此角色的用户可以查看维护政策。
- Project Maintenance Policy Editor (
project-mp-editor) - 具有此角色的用户拥有
project_mp_viewer角色所授予的权限,还可以创建、修改和删除维护政策。 - Project Maintenance Policy Binding Viewer (
project-mpb-viewer) - 具有此角色的用户可以查看维护政策绑定。
- Project Maintenance Policy Binding Editor (
project-mpb-editor) - 具有此角色的用户拥有
project_mpb_viewer角色所赋予的功能,还可以创建、修改和删除维护政策绑定。
可用的数据库引擎
以下数据库引擎可在 GDC 环境中使用:
| 数据库 | 版本 |
|---|---|
| PostgreSQL | 13、14、15 |
创建数据库集群
具有 Project DB Admin 角色的用户必须执行以下步骤。您可以使用 GDC 控制台或 Distributed Cloud CLI 来创建数据库集群。
控制台
gdcloud
运行以下命令以创建数据库集群:
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。
在同一命名空间中创建 DBS
BackupPlan资源以启用备份。