Crea un clúster de base de datos

En esta página, se describe cómo usar el servicio de bases de datos para crear y administrar bases de datos en Google Distributed Cloud (GDC) con aislamiento de aire.

Autorización y roles

Los usuarios deben estar autorizados para acceder al servicio de base de datos. Se requiere autorización para acceder al servicio de base de datos con la consola de GDC y la CLI de Distributed Cloud.

Los siguientes roles otorgan permisos a los usuarios:

project-viewer
Los usuarios con este rol pueden acceder a la consola de GDC.
project-db-viewer
Los usuarios con este rol pueden ver clústeres de bases de datos.
project-db-editor
Los usuarios con este rol tienen las capacidades que confiere project-db-viewer y también pueden editar clústeres de bases de datos.
project-db-admin
Los usuarios con este rol tienen la capacidad que confiere project-db-editor y también pueden crear y borrar clústeres de bases de datos.
project-bucket-object-viewer
Los usuarios con este rol pueden usar el navegador de almacenamiento en la interfaz del servicio de base de datos en la consola de GDC. Esta interfaz se usa para especificar archivos para las importaciones de bases de datos y para especificar destinos para los archivos generados por las exportaciones de bases de datos.
project-monitoring-viewer
Los usuarios con este rol pueden acceder a la instancia de supervisión. Consulta Observa las métricas para obtener más información sobre cómo observar las métricas del servicio de bases de datos. Solo debes otorgar este rol a los usuarios que necesiten acceder a la instancia de supervisión.
project_mp_admin
Los usuarios con este rol tienen las capacidades que confieren los roles de project_mp_editor y project_mpb_editor, por lo que pueden crear, editar y borrar tanto las políticas de mantenimiento como las vinculaciones de políticas de mantenimiento.
project_mp_viewer
Los usuarios con este rol pueden ver las políticas de mantenimiento.
project_mp_editor
Los usuarios con este rol tienen las capacidades que confiere el rol de project_mp_viewer y también pueden crear, editar y borrar políticas de mantenimiento.
project_mpb_viewer
Los usuarios con este rol pueden ver las vinculaciones de políticas de mantenimiento.
project_mpb_editor
Los usuarios con este rol tienen las capacidades que confiere el rol de project_mpb_viewer y también pueden crear, editar y borrar vinculaciones de políticas de mantenimiento.

Motores de bases de datos disponibles

Los siguientes motores de bases de datos están disponibles para su uso en un entorno de GDC:

Base de datos Versiones
AlloyDB Omni 15
Oracle 19
PostgreSQL 13, 14 y 15

Elige un tipo de motor de base de datos y crea un clúster de base de datos

Si deseas habilitar las copias de seguridad para el clúster de bases de datos, primero crea un bucket de almacenamiento de Distributed Cloud o cualquier bucket al que se pueda acceder con un extremo compatible con S3 y, luego, crea un repositorio de copias de seguridad llamado dbs-backup-repository. Si usas un bucket de almacenamiento fuera de Distributed Cloud, es tu responsabilidad asegurarte de que esté encriptado correctamente.

A continuación, se muestra un ejemplo de un recurso personalizado BackupRepository creado para las copias de seguridad del servicio de bases de datos:

apiVersion: backup.gdc.goog/v1
kind: BackupRepository
metadata:
  name: dbs-backup-repository
spec:
  secretReference:
    namespace: "object-storage-secret-ns"
    name: "object-storage-secret"
  endpoint: "https://objectstorage.google.gdch.test"
  type: S3
  s3Options:
    bucket: "fully-qualified-bucket-name"
    region: "us-east-1"
    forcePathStyle: true
  importPolicy: ReadWrite

Un usuario con el rol de administrador de la base de datos del proyecto debe realizar los siguientes pasos. Usa la consola de GDC o la CLI de Distributed Cloud para crear clústeres de bases de datos:

Console

  1. En el menú principal, elige Servicio de base de datos.
  2. Haz clic en Crear clúster de base de datos.
  3. En el diálogo Elige un motor para la base de datos, elige un motor de base de datos.

  4. En el cuadro de diálogo Configura tu clúster, especifica el ID, la contraseña y la versión de la base de datos del clúster. Puedes habilitar las copias de seguridad y configurar el período de retención de copias de seguridad.

  5. Si elegiste el motor de base de datos de PostgreSQL, puedes habilitar la alta disponibilidad para tu clúster de bases de datos. Si está habilitado, el servicio de base de datos aprovisiona una instancia en espera en la misma zona que tu instancia principal para protegerla contra fallas. Consulta Alta disponibilidad para obtener más información.

  6. En el cuadro de diálogo Configura tu instancia principal, especifica la capacidad de CPU, memoria y almacenamiento de la instancia principal del clúster de bases de datos. Te recomendamos que elijas suficiente memoria para contener tu tabla más grande.

  7. Haz clic en Crear. La creación del clúster de la base de datos puede tardar unos minutos. Verifica el estado del clúster en la página Descripción general del clúster. El estado cambia de Creando a Listo cuando el clúster está listo.

gdcloud

  1. Antes de usar Distributed Cloud CLI, instálala y, luego, inicialízala. Luego, autentícate con tu organización.

  2. Ejecuta el siguiente comando para crear un clúster de base de datos:

    gdcloud database clusters create CLUSTER_NAME \
        --database-version DB_VERSION \
        --admin-password ADMIN_PASSWORD
    

    Reemplaza las siguientes variables:

    • CLUSTER_NAME por el nombre del clúster nuevo.
    • DB_VERSION con la cadena de versión del clúster nuevo. Por ejemplo, POSTGRESQL_13, ORACLE_19_ENTERPRISE o ALLOYDBOMNI_15
    • ADMIN_PASSWORD con la contraseña de administrador del clúster nuevo.
  3. Para obtener más información sobre la configuración de los recursos de CPU, memoria y almacenamiento del clúster de base de datos, la configuración de copias de seguridad, la habilitación de la alta disponibilidad y otras opciones disponibles, ejecuta el siguiente comando:

    gdcloud database clusters create --help
    

API

Para bases de datos de AlloyDB o PostgreSQL, haz lo siguiente:

apiVersion: v1
kind: Secret
metadata:
  name: db-pw-DBCLUSTER_NAME
  namespace: USER_PROJECT
type: Opaque
data:
  DBCLUSTER_NAME: "BASE64_PASSWORD"
---
apiVersion: DBENGINE_NAME.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

Para las bases de datos de Oracle, haz lo siguiente:

apiVersion: v1
kind: Secret
metadata:
  name: db-pw-DBCLUSTER_NAME
  namespace: USER_PROJECT
type: Opaque
data:
  DBCLUSTER_NAME: "BASE64_PASSWORD"
---
apiVersion: oracle.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"
    cdbName: GCLOUD
    resources:
      memory: DB_MEMORY
      cpu: DB_CPU
      disks:
      - name: DataDisk
        size: DB_DATA_DISK
      - name: LogDisk
        size: DB_LOG_DISK

Reemplaza las siguientes variables:

  • DBCLUSTER_NAME, el nombre del clúster de la base de datos
  • USER_PROJECT, el nombre del proyecto del usuario en el que se creará el clúster de base de datos.
  • BASE64_PASSWORD, la codificación en base64 de la contraseña del administrador de la base de datos.
  • DBENGINE_NAME, el nombre del motor de base de datos. Puede ser alloydbomni o postgresql.
  • DB_VERSION, la versión del motor de base de datos
  • DB_MEMORY, la cantidad de memoria asignada al clúster de base de datos, por ejemplo, 5Gi.
  • DB_CPU, la cantidad de CPU asignadas al clúster de base de datos, por ejemplo, 2.
  • DB_DATA_DISK, cantidad de espacio asignado al clúster de base de datos, por ejemplo, 10 Gi.
  • DB_LOG_DISK, la cantidad de espacio asignado al disco de registro de la base de datos de Oracle (solo para Oracle).