Créer un cluster de base de données

Cette page explique comment utiliser le service de base de données pour créer et gérer des bases de données dans Google Distributed Cloud (GDC) air-gapped.

Autorisation et rôles

Les utilisateurs doivent être autorisés à accéder au service de base de données. Une autorisation est requise pour accéder au service de base de données avec la console GDC et la CLI Distributed Cloud.

Les rôles suivants accordent des autorisations aux utilisateurs :

project-viewer
Les utilisateurs disposant de ce rôle peuvent accéder à la console GDC.
project-db-viewer
Les utilisateurs disposant de ce rôle peuvent afficher les clusters de bases de données.
project-db-editor
Les utilisateurs disposant de ce rôle ont les mêmes droits que ceux disposant du rôle project-db-viewer, mais peuvent également modifier les clusters de bases de données.
project-db-admin
Les utilisateurs disposant de ce rôle ont les mêmes droits que ceux disposant du rôle project-db-editor. Ils peuvent également créer et supprimer des clusters de bases de données.
project-bucket-object-viewer
Les utilisateurs disposant de ce rôle peuvent utiliser le navigateur de stockage dans l'interface du service de base de données de la console GDC. Cette interface permet de spécifier les fichiers pour les importations de bases de données et les destinations des fichiers générés par les exportations de bases de données.
project-monitoring-viewer
 Les utilisateurs disposant de ce rôle peuvent accéder à l'instance de surveillance. Pour en savoir plus sur l'observation des métriques Database Service, consultez Observer les métriques. Vous ne devez accorder ce rôle qu'aux utilisateurs qui ont besoin d'accéder à l'instance de surveillance.
project_mp_admin
 Les utilisateurs disposant de ce rôle ont les capacités conférées par les rôles project_mp_editor et project_mpb_editor. Ils peuvent donc créer, modifier et supprimer des liaisons et des règles de maintenance.
project_mp_viewer
Les utilisateurs disposant de ce rôle peuvent consulter les règles de maintenance.
project_mp_editor
Les utilisateurs disposant de ce rôle ont les mêmes droits que ceux disposant du rôle project_mp_viewer. Ils peuvent également créer, modifier et supprimer des règles de maintenance.
project_mpb_viewer
Les utilisateurs disposant de ce rôle peuvent afficher les liaisons de règles de maintenance.
project_mpb_editor
Les utilisateurs disposant de ce rôle ont les capacités conférées par le rôle project_mpb_viewer. Ils peuvent également créer, modifier et supprimer des liaisons de règles de maintenance.

Moteurs de base de données disponibles

Les moteurs de base de données suivants sont disponibles dans un environnement GDC :

Base de données Versions
AlloyDB Omni 15
Oracle 19
PostgreSQL 13, 14, 15

Choisir un type de moteur de base de données et créer un cluster de bases de données

Si vous souhaitez activer les sauvegardes pour le cluster de bases de données, commencez par créer un bucket Distributed Cloud Storage ou tout bucket accessible avec un point de terminaison compatible S3, puis créez un dépôt de sauvegarde nommé dbs-backup-repository. Si vous utilisez un bucket de stockage en dehors de Distributed Cloud, il vous incombe de vous assurer qu'il est correctement chiffré.

Voici un exemple de ressource personnalisée BackupRepository créée pour les sauvegardes du service de base de données :

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 utilisateur disposant du rôle Administrateur de base de données du projet doit effectuer les étapes suivantes. Utilisez la console GDC ou la CLI Distributed Cloud pour créer des clusters de bases de données :

Console

  1. Dans le menu principal, sélectionnez Service de base de données.
  2. Cliquez sur Créer un cluster de bases de données.
  3. Dans la boîte de dialogue Choisir un moteur de base de données, sélectionnez un moteur de base de données.

  4. Dans la boîte de dialogue Configurer votre cluster, spécifiez l'ID du cluster, le mot de passe et la version de la base de données. Vous pouvez activer les sauvegardes et configurer la période de conservation des sauvegardes.

  5. Si vous avez choisi le moteur de base de données PostgreSQL, vous pouvez activer la haute disponibilité pour votre cluster de bases de données. Si ce service est activé, il provisionne une instance de secours dans la même zone que votre instance principale pour vous protéger contre les défaillances. Pour en savoir plus, consultez Haute disponibilité.

  6. Dans la boîte de dialogue Configurer votre instance principale, spécifiez la capacité de processeur, de mémoire et de stockage de l'instance principale du cluster de bases de données. Nous vous recommandons de choisir une quantité de mémoire suffisante pour accueillir votre table la plus volumineuse.

  7. Cliquez sur Créer. La création du cluster de bases de données peut prendre quelques minutes. Vérifiez l'état du cluster sur la page Présentation du cluster. L'état passe de Création à Prêt lorsque le cluster est prêt.

gdcloud

  1. Avant d'utiliser Distributed Cloud CLI, installez-la et initialisez-la. Ensuite, authentifiez-vous auprès de votre organisation.

  2. Exécutez la commande suivante pour créer un cluster de bases de données :

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

    Remplacez les variables suivantes :

    • CLUSTER_NAME par le nom du nouveau cluster.
    • DB_VERSION par la chaîne de version du nouveau cluster. Par exemple, POSTGRESQL_13, ORACLE_19_ENTERPRISE ou ALLOYDBOMNI_15.
    • ADMIN_PASSWORD avec le mot de passe administrateur du nouveau cluster.
  3. Pour en savoir plus sur la configuration des ressources de processeur, de mémoire et de stockage pour le cluster de bases de données, sur la configuration des sauvegardes, sur l'activation de la haute disponibilité et sur les autres options disponibles, exécutez la commande suivante :

    gdcloud database clusters create --help
    

API

Pour les bases de données AlloyDB ou 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

Pour les bases de données 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

Remplacez les variables suivantes :

  • DBCLUSTER_NAME, nom du cluster de base de données.
  • USER_PROJECT, nom du projet utilisateur dans lequel le cluster de bases de données sera créé.
  • BASE64_PASSWORD, encodage en base64 du mot de passe administrateur de la base de données.
  • DBENGINE_NAME, nom du moteur de base de données. Il s'agit de l'une des valeurs suivantes : alloydbomni ou postgresql.
  • DB_VERSION, la version du moteur de base de données
  • DB_MEMORY : quantité de mémoire allouée au cluster de bases de données (par exemple, 5Gi).
  • DB_CPU : nombre de processeurs alloués au cluster de bases de données (par exemple, 2).
  • DB_DATA_DISK, quantité d'espace allouée au cluster de bases de données, par exemple 10 Gi.
  • DB_LOG_DISK : espace alloué au disque de journaux de la base de données Oracle (Oracle uniquement).