Creare un cluster di database

Questa pagina descrive come utilizzare il servizio di database per creare e gestire database in Google Distributed Cloud (GDC) air-gapped.

Autorizzazione e ruoli

Gli utenti devono essere autorizzati ad accedere al servizio di database. L'autorizzazione è necessaria per accedere al servizio di database sia con la console GDC che con la CLI Distributed Cloud.

I seguenti ruoli concedono autorizzazioni agli utenti:

project-viewer
Gli utenti con questo ruolo possono accedere alla console GDC.
project-db-viewer
Gli utenti con questo ruolo possono visualizzare i cluster di database.
project-db-editor
Gli utenti con questo ruolo dispongono delle funzionalità conferite da project-db-viewer e possono anche modificare i cluster di database.
project-db-admin
Gli utenti con questo ruolo hanno la capacità conferita da project-db-editor e possono anche creare ed eliminare cluster di database.
project-bucket-object-viewer
Gli utenti con questo ruolo possono utilizzare il browser di archiviazione nell'interfaccia del servizio di database nella console GDC. Questa interfaccia viene utilizzata per specificare i file per le importazioni di database e per specificare le destinazioni dei file generati dalle esportazioni di database.
project-monitoring-viewer
Gli utenti con questo ruolo possono accedere all'istanza di monitoraggio. Per ulteriori informazioni sull'osservazione delle metriche del servizio di database, consulta Osservare le metriche. Devi concedere questo ruolo solo agli utenti che devono accedere all'istanza di monitoraggio.
project_mp_admin
Gli utenti con questo ruolo dispongono delle funzionalità conferite dai ruoli project_mp_editor e project_mpb_editor, pertanto possono creare, modificare ed eliminare sia le norme di manutenzione sia i relativi binding.
project_mp_viewer
Gli utenti con questo ruolo possono visualizzare i criteri di manutenzione.
project_mp_editor
Gli utenti con questo ruolo dispongono delle funzionalità conferite dal ruolo project_mp_viewer e possono anche creare, modificare ed eliminare le norme di manutenzione.
project_mpb_viewer
Gli utenti con questo ruolo possono visualizzare i binding delle norme di manutenzione.
project_mpb_editor
Gli utenti con questo ruolo dispongono delle funzionalità conferite dal ruolo project_mpb_viewer e possono anche creare, modificare ed eliminare i binding dei criteri di manutenzione.

Motori del database disponibili

In un ambiente GDC sono disponibili i seguenti motori di database:

Database Versioni
AlloyDB Omni 15
Oracle 19
PostgreSQL 13, 14, 15

Scegli un tipo di motore del database e crea un cluster di database

Se vuoi attivare i backup per il cluster di database, crea prima un bucket Distributed Cloud Storage o qualsiasi bucket accessibile con un endpoint compatibile con S3, poi crea un repository di backup denominato dbs-backup-repository. Se utilizzi un bucket di archiviazione al di fuori di Distributed Cloud, è tua responsabilità assicurarti che sia criptato correttamente.

Di seguito è riportata una risorsa personalizzata BackupRepository di esempio creata per i backup di Database Service:

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 utente con il ruolo Amministratore DB progetto deve eseguire i seguenti passaggi. Utilizza la console GDC o Distributed Cloud CLI per creare cluster di database:

Console

  1. Nel menu principale, scegli Database Service.
  2. Fai clic su Crea cluster di database.
  3. Nella finestra di dialogo Scegli un motore di database, scegli un motore di database.

  4. Nella finestra di dialogo Configura il cluster, specifica l'ID cluster, la password e la versione del database. Puoi abilitare i backup e configurare il periodo di conservazione dei backup.

  5. Se hai scelto il motore del database PostgreSQL, puoi attivare l'alta disponibilità per il cluster di database. Se abilitato, il servizio di database provisiona un'istanza di standby nella stessa zona dell'istanza primaria per proteggerti da eventuali errori. Per ulteriori informazioni, consulta Alta disponibilità.

  6. Nella finestra di dialogo Configura l'istanza principale, specifica la capacità di CPU, memoria e spazio di archiviazione dell'istanza principale del cluster di database. Ti consigliamo di scegliere una memoria sufficiente per contenere la tabella più grande.

  7. Fai clic su Crea. La creazione del cluster di database può richiedere alcuni minuti. Controlla lo stato del cluster dalla pagina Panoramica del cluster. Lo stato passa da Creazione a Pronto quando il cluster è pronto.

gdcloud

  1. Prima di utilizzare Distributed Cloud CLI, installala e inizializzala. Poi, autenticati con la tua organizzazione.

  2. Esegui questo comando per creare un cluster di database:

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

    Sostituisci le seguenti variabili:

    • CLUSTER_NAME con il nome del nuovo cluster.
    • DB_VERSION con la stringa di versione per il nuovo cluster. Ad esempio, POSTGRESQL_13, ORACLE_19_ENTERPRISE o ALLOYDBOMNI_15
    • ADMIN_PASSWORD con la password amministratore per il nuovo cluster.
  3. Per ulteriori informazioni sulla configurazione delle risorse di CPU, memoria e spazio di archiviazione per il cluster di database, sulla configurazione del backup, sull'attivazione dell'alta disponibilità e su altre opzioni disponibili, esegui:

    gdcloud database clusters create --help
    

API

Per i database AlloyDB o PostgreSQL:

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

Per i database Oracle:

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

Sostituisci le seguenti variabili:

  • DBCLUSTER_NAME, il nome del cluster di database.
  • USER_PROJECT, il nome del progetto utente in cui verrà creato il cluster di database.
  • BASE64_PASSWORD, la codifica Base64 della password dell'amministratore del database.
  • DBENGINE_NAME, il nome del motore del database. Questo è uno dei seguenti valori: alloydbomni o postgresql.
  • DB_VERSION, la versione del motore del database.
  • DB_MEMORY, la quantità di memoria allocata al cluster di database, ad esempio 5Gi.
  • DB_CPU, la quantità di CPU allocate al cluster di database, ad esempio 2.
  • DB_DATA_DISK, quantità di spazio allocato al cluster di database, ad esempio 10 Gi.
  • DB_LOG_DISK, la quantità di spazio allocato al disco dei log del database Oracle (solo Oracle).