GDC Sandbox fournit le service de base de données pour tester et gérer les clusters de bases de données.
Créer une base de données
Pour créer et gérer un cluster de bases de données, consultez Créer et gérer un cluster de bases de données.
Moteurs de base de données disponibles
GDC Sandbox n'est compatible qu'avec PostgreSQL et AlloyDB.
Utilisez la console GDC ou la CLI Distributed Cloud pour créer des clusters de bases de données :
Console
- Dans le menu principal, sélectionnez Service de base de données.
- Cliquez sur Créer un cluster de bases de données.
Dans la boîte de dialogue Sélectionner un moteur de base de données, sélectionnez un moteur de base de données.
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.
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 suffisamment de mémoire pour accueillir votre table la plus volumineuse.
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
Avant d'utiliser la CLI Distributed Cloud, installez-la et initialisez-la. Ensuite, authentifiez-vous auprès de votre organisation.
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_PASSWORDRemplacez les variables suivantes :
CLUSTER_NAMEpar le nom du nouveau cluster.DB_VERSIONpar la chaîne de version du nouveau cluster. Par exemple,POSTGRESQL_13ouALLOYDBOMNI_15ADMIN_PASSWORDpar le mot de passe administrateur du nouveau cluster.
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, la configuration de la sauvegarde, l'activation de la haute disponibilité et d'autres options disponibles, exécutez la commande suivante :
gdcloud database clusters create --help
API
Créez un fichier
db-cluster-create.yamlavec le contenu suivant :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_DISKRemplacez les variables suivantes :
DBCLUSTER_NAMEpar le nom du cluster de bases de données.USER_PROJECTpar le nom du projet utilisateur dans lequel le cluster de bases de données sera créé.BASE64_PASSWORDpar l'encodage en base64 du mot de passe administrateur de la base de données.DBENGINE_NAMEpar le nom du moteur de base de données. Il s'agit de l'un des éléments suivants :alloydbomnioupostgresql.DB_VERSIONpar la version du moteur de base de données.DB_MEMORYpar la quantité de mémoire allouée au cluster de bases de données, par exemple5Gi.DB_CPUpar la quantité de processeurs allouée au cluster de bases de données, par exemple2.DB_DATA_DISKpar la quantité d'espace allouée au cluster de bases de données, par exemple10 Gi.
kubectl --kubeconfig MANAGEMENT_API apply -f db-cluster-create.yaml
Se connecter à la base de données
Par défaut, un cluster de bases de données n'autorise la connexion qu'à partir du cluster d'utilisateur et du même projet.
Pour activer les connexions à tous les clusters de bases de données de votre projet à partir d'un autre projet, consultez Activer les connexions entre projets.
Pour vous connecter à la base de données à partir d'adresses IP en dehors de votre organisation GDC Sandbox, suivez les instructions de la section Se connecter à un cluster de bases de données pour activer les connexions externes.
Vous pouvez utiliser sshuttle pour vous connecter à votre base de données avec un client de base de données local tel que psql :
Accédez à la section Connectivité de la page Service de base de données pour le cluster de bases de données. Cette page inclut les éléments suivants :
- Le mot de passe du compte administrateur (le nom d'utilisateur est
dbsadmin) - Le nom d'hôte et le numéro de port du point de terminaison principal du cluster de bases de données
- Une commande
psqlpour se connecter au cluster (pour les clusters de bases de données PostgreSQL et AlloyDB Omni) - Un lien pour télécharger le certificat d'autorité de certification (CA) du cluster de bases de données
- Le mot de passe du compte administrateur (le nom d'utilisateur est
Téléchargez le certificat CA à partir de la console GDC dans la section Connectivité de la page Service de base de données pour votre cluster de bases de données.
Configurez votre client pour qu'il utilise le certificat CA afin de valider la base de données. Pour les clients
psql, définissez la variable d'environnementPGSSLROOTCERTsur le chemin d'accès au fichier de certificat et la variable d'environnementPGSSLMODEsur votre préférence :export PGSSLROOTCERT=path/to/accounts_cert.pem export PGSSLMODE="verify-full"Lancez un tunnel sécurisé. Si vous disposez d'une instance
sshuttleen cours d'exécution, comme décrit dans Se connecter à votre instance, mettez fin à ce processus.sshuttle -r zone1-org-1-data@GDC_SANDBOX_INSTANCE_NAME --no-latency-control \ --ssh-cmd 'gcloud compute ssh --project PROJECT_NAME --zone ZONE --tunnel-through-iap' \ 10.200.0.0/16 --dnsRemplacez les éléments suivants par les valeurs fournies par l'équipe GDC Sandbox :
GDC_SANDBOX_INSTANCE_NAMEpar le nom de votre instance GDC Sandbox.PROJECT_NAMEpar le projet contenant votre environnement GDC Sandbox.ZONEpar la zone contenant votre environnement GDC Sandbox.
Lorsque le tunnel est actif, exécutez la commande à l'aide de
psqldans un autre terminal.PGPASSWORD=DB_PASSWORD psql -h DB_HOSTNAME -p PORT -U USERNAME -d postgresRemplacez les variables suivantes :
DB_PASSWORDpar le mot de passe de l'UI de la console.DB_HOSTNAMEpar le nom d'hôte de la base de données de la console.DB_PORTpar le numéro de port de la base de données de la console.DB_USERNAMEpar le nom d'utilisateur de la base de données de la console.