Datenbankcluster erstellen

Auf dieser Seite wird beschrieben, wie Sie mit dem Database Service Datenbanken in Google Distributed Cloud (GDC) air-gapped erstellen und verwalten.

Autorisierung und Rollen

Nutzer müssen für den Zugriff auf den Datenbankdienst autorisiert sein. Für den Zugriff auf den Datenbankdienst mit der GDC-Konsole und der Distributed Cloud CLI ist eine Autorisierung erforderlich.

Durch die folgenden Rollen werden Nutzern Berechtigungen gewährt:

project-viewer
Nutzer mit dieser Rolle können auf die GDC-Konsole zugreifen.
project-db-viewer
Nutzer mit dieser Rolle können Datenbankcluster ansehen.
project-db-editor
Nutzer mit dieser Rolle haben die durch project-db-viewer gewährten Berechtigungen und können auch Datenbankcluster bearbeiten.
project-db-admin
Nutzer mit dieser Rolle haben die durch project-db-editor verliehene Berechtigung und können auch Datenbankcluster erstellen und löschen.
project-bucket-object-viewer
Nutzer mit dieser Rolle können den Speicherbrowser in der Benutzeroberfläche des Database Service in der GDC-Konsole verwenden. Über diese Schnittstelle können Sie Dateien für Datenbankimporte und Ziele für Dateien angeben, die durch Datenbankexporte generiert werden.
project-monitoring-viewer
Nutzer mit dieser Rolle können auf die Monitoring-Instanz zugreifen. Weitere Informationen zum Beobachten von Messwerten für den Datenbankdienst finden Sie unter Messwerte beobachten. Sie sollten diese Rolle nur Nutzern zuweisen, die auf die Monitoring-Instanz zugreifen müssen.
project_mp_admin
Nutzer mit dieser Rolle haben die Berechtigungen der Rollen project_mp_editor und project_mpb_editor. Sie können also sowohl Wartungsrichtlinien als auch Bindungen von Wartungsrichtlinien erstellen, bearbeiten und löschen.
project_mp_viewer
Nutzer mit dieser Rolle können Wartungsrichtlinien ansehen.
project_mp_editor
Nutzer mit dieser Rolle haben die Berechtigungen der Rolle project_mp_viewer und können außerdem Wartungsrichtlinien erstellen, bearbeiten und löschen.
project_mpb_viewer
Nutzer mit dieser Rolle können Bindungen an die Wartungsrichtlinie ansehen.
project_mpb_editor
Nutzer mit dieser Rolle haben die Berechtigungen der Rolle project_mpb_viewer und können außerdem Bindungen für Wartungsrichtlinien erstellen, bearbeiten und löschen.

Verfügbare Datenbankmodule

Die folgenden Datenbank-Engines können in einer GDC-Umgebung verwendet werden:

Datenbank Versionen
AlloyDB Omni 15
Oracle 19
PostgreSQL 13, 14, 15

Datenbankmodultyp auswählen und Datenbankcluster erstellen

Wenn Sie Sicherungen für den Datenbankcluster aktivieren möchten, erstellen Sie zuerst einen Distributed Cloud Storage-Bucket oder einen beliebigen Bucket, auf den über einen S3-kompatiblen Endpunkt zugegriffen werden kann. Erstellen Sie dann ein Sicherungs-Repository mit dem Namen dbs-backup-repository. Wenn Sie einen Speicher-Bucket außerhalb von Distributed Cloud verwenden, sind Sie dafür verantwortlich, dass der Bucket ordnungsgemäß verschlüsselt ist.

Das Folgende ist ein Beispiel für eine benutzerdefinierte BackupRepository-Ressource, die für Sicherungen des Database Service erstellt wurde:

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

Ein Nutzer mit der Rolle „Project DB Admin“ muss die folgenden Schritte ausführen. Verwenden Sie entweder die GDC-Konsole oder die Distributed Cloud CLI, um Datenbankcluster zu erstellen:

Console

  1. Wählen Sie im Hauptmenü Database Service aus.
  2. Klicken Sie auf Datenbankcluster erstellen.
  3. Wählen Sie im Dialogfeld Datenbankmodul auswählen ein Datenbankmodul aus.

  4. Geben Sie im Dialogfeld Cluster konfigurieren die Cluster-ID, das Passwort und die Datenbankversion an. Sie können Sicherungen aktivieren und den Aufbewahrungszeitraum für Sicherungen konfigurieren.

  5. Wenn Sie das PostgreSQL-Datenbankmodul ausgewählt haben, können Sie Hochverfügbarkeit für Ihren Datenbankcluster aktivieren. Wenn diese Option aktiviert ist, stellt der Datenbankdienst eine Stand-by-Instanz in derselben Zone wie Ihre primäre Instanz bereit, um vor Ausfällen zu schützen. Weitere Informationen finden Sie unter Hochverfügbarkeit.

  6. Geben Sie im Dialogfeld Primäre Instanz konfigurieren die CPU-, Arbeitsspeicher- und Speicherkapazität der primären Instanz des Datenbankclusters an. Wir empfehlen, genügend Arbeitsspeicher für Ihre größte Tabelle auszuwählen.

  7. Klicken Sie auf Erstellen. Die Erstellung des Datenbankclusters kann einige Minuten dauern. Prüfen Sie den Status des Clusters auf der Seite Clusterübersicht. Der Status ändert sich von Wird erstellt zu Bereit, wenn der Cluster bereit ist.

gdcloud

  1. Bevor Sie die Distributed Cloud CLI verwenden, müssen Sie sie installieren und initialisieren. Authentifizieren Sie sich dann bei Ihrer Organisation.

  2. Führen Sie den folgenden Befehl aus, um einen Datenbankcluster zu erstellen:

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

    Ersetzen Sie die folgenden Variablen:

    • CLUSTER_NAME durch den Namen des neuen Clusters.
    • Ersetzen Sie DB_VERSION durch den Versionsstring für den neuen Cluster. Beispiel: POSTGRESQL_13, ORACLE_19_ENTERPRISE oder ALLOYDBOMNI_15
    • ADMIN_PASSWORD durch das Administratorpasswort für den neuen Cluster.
  3. Weitere Informationen zum Konfigurieren der CPU-, Arbeitsspeicher- und Speicherressourcen für den Datenbankcluster, zum Konfigurieren von Back-ups, zum Aktivieren von Hochverfügbarkeit und zu anderen verfügbaren Optionen erhalten Sie mit folgendem Befehl:

    gdcloud database clusters create --help
    

API

Für AlloyDB- oder PostgreSQL-Datenbanken:

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

Für Oracle-Datenbanken:

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

Ersetzen Sie die folgenden Variablen:

  • DBCLUSTER_NAME: der Name des Datenbankclusters.
  • USER_PROJECT: Der Name des Nutzerprojekts, in dem der Datenbankcluster erstellt wird.
  • BASE64_PASSWORD, die Base64-Codierung des Administratorpassworts der Datenbank.
  • DBENGINE_NAME: der Name der Datenbank-Engine. Dies ist entweder alloydbomni oder postgresql.
  • DB_VERSION, die Version des Datenbankmoduls.
  • DB_MEMORY: Die dem DB-Cluster zugewiesene Speichermenge, z. B. 5Gi.
  • DB_CPU: Die Anzahl der CPUs, die dem DB-Cluster zugewiesen sind, z. B. 2.
  • DB_DATA_DISK: Die dem DB-Cluster zugewiesene Menge an Speicherplatz, z. B. 10 Gi.
  • DB_LOG_DISK: Der Speicherplatz, der dem Protokolldatenträger der Oracle-Datenbank zugewiesen ist (nur Oracle).