Se connecter à Cloud SQL pour PostgreSQL à l'aide du proxy d'authentification Cloud SQL

Cette page vous explique comment vous connecter à Cloud SQL depuis un environnement de test local à l'aide du proxy d'authentification Cloud SQL. Le proxy d'authentification Cloud SQL fournit un accès sécurisé à votre instance Cloud SQL, sans nécessiter de réseaux autorisés ni de configuration SSL. Vous pouvez vous connecter en toute sécurité à votre instance Cloud SQL à l'aide de ce proxy.

Les instructions de cette page concernent uniquement les environnements de test et ne doivent pas être utilisées pour les environnements de production. Pour en savoir plus sur la configuration requise pour les environnements de production, consultez les pages Utiliser le proxy d'authentification Cloud SQL dans un environnement de production et Se connecter à l'aide du proxy d'authentification Cloud SQL.

Avant de commencer

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  5. Make sure that billing is enabled for your Google Cloud project.

  6. Activez les API Google Cloud nécessaires.

    Console

    Dans Google Cloud Console, accédez à la page API.

    Accéder aux API

    Activez l'API Cloud SQL Admin.

    gcloud

    Cliquez sur le bouton suivant pour ouvrir Cloud Shell, qui fournit un accès en ligne de commande à vos ressources Google Cloud directement depuis le navigateur. Cloud Shell peut être utilisé pour exécuter les commandes gcloud présentées dans ce guide de démarrage rapide.

    Ouvrir Cloud Shell

    Exécutez la commande gcloud services enable comme suit à l'aide de Cloud Shell pour activer les API requises pour ce guide de démarrage rapide :

    gcloud services enable sqladmin.googleapis.com

    Cette commande active les API suivantes :

    • API Cloud SQL Admin

Créer une instance Cloud SQL

Dans ce guide de démarrage rapide, vous utilisez Google Cloud Console. Pour utiliser gcloud CLI, cURL ou PowerShell, consultez la section Créer des instances.

  1. Dans la console Google Cloud, accédez à la page Instances Cloud SQL.

    Accéder à la page Instances Cloud SQL

  2. Cliquez sur Créer une instance.
  3. Cliquez sur Choisir PostgreSQL.
  4. Dans le champ ID d'instance, saisissez myinstance.
  5. Dans le champ Mot de passe, saisissez un mot de passe pour l'utilisateur postgres.
  6. Cliquez sur Créer une instance.

    Vous êtes redirigé vers la liste des instances. Vous pouvez cliquer directement sur la nouvelle instance pour en afficher les détails, mais elle ne sera disponible pour les autres opérations qu'une fois initialisée et démarrée.

Debian/Ubuntu

Installez le client psql à partir du gestionnaire de packages :

sudo apt-get update
sudo apt-get install postgresql-client

CentOS/RHEL

Installez le client psql à partir du gestionnaire de packages :

sudo yum install postgresql

openSUSE

Installez le client psql à partir du gestionnaire de packages :

sudo zypper install postgresql

Autres plates-formes

  1. Téléchargez PostgreSQL Core Distribution sur votre plate-forme depuis la page des téléchargements PostgreSQL.
    Core Distribution inclut le client psql.
  2. Installez la base de données PostgreSQL en suivant les instructions de la page de téléchargement.

Installer le client proxy d'authentification Cloud SQL

Le binaire du proxy d'authentification Cloud SQL à télécharger dépend du système d'exploitation et de l'utilisation d'un noyau 32 bits ou 64 bits. Dans la plupart des cas, le matériel récent possède un noyau 64 bits. Si vous ne savez pas si votre machine exécute un noyau 32 bits ou 64 bits, utilisez la commande uname -a pour Linux ou macOS. Pour Windows, consultez la documentation Windows.

Linux 64 bits

  1. Téléchargez le proxy d'authentification Cloud SQL :
    curl -o cloud-sql-proxy https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.14.1/cloud-sql-proxy.linux.amd64
  2. Rendez le proxy d'authentification Cloud SQL exécutable :
    chmod +x cloud-sql-proxy

Linux 32 bits

  1. Téléchargez le proxy d'authentification Cloud SQL :
    curl -o cloud-sql-proxy https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.14.1/cloud-sql-proxy.linux.386
  2. Si la commande curl est introuvable, exécutez sudo apt install curl puis répétez la commande de téléchargement.
  3. Rendez le proxy d'authentification Cloud SQL exécutable :
    chmod +x cloud-sql-proxy

macOS 64 bits

  1. Téléchargez le proxy d'authentification Cloud SQL :
    curl -o cloud-sql-proxy https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.14.1/cloud-sql-proxy.darwin.amd64
  2. Rendez le proxy d'authentification Cloud SQL exécutable :
    chmod +x cloud-sql-proxy

Mac M1

  1. Téléchargez le proxy d'authentification Cloud SQL :
      curl -o cloud-sql-proxy https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.14.1/cloud-sql-proxy.darwin.arm64
      
  2. Rendez le proxy d'authentification Cloud SQL exécutable :
      chmod +x cloud-sql-proxy
      

Windows 64 bits

Effectuez un clic droit sur https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.14.1/cloud-sql-proxy.x64.exe et sélectionnez Enregistrer le lien sous pour télécharger le proxy d'authentification Cloud SQL. Renommez le fichier en cloud-sql-proxy.exe.

Windows 32 bits

Effectuez un clic droit sur https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.14.1/cloud-sql-proxy.x86.exe et sélectionnez Enregistrer le lien sous pour télécharger le proxy d'authentification Cloud SQL. Renommez le fichier en cloud-sql-proxy.exe.

Image Docker du proxy d'authentification Cloud SQL

Le proxy d'authentification Cloud SQL possède différentes images de conteneur, telles que distroless, alpine et buster. L'image de conteneur du proxy d'authentification Cloud SQL par défaut utilise distroless, qui ne contient aucune interface système. Si vous avez besoin d'une interface système ou d'outils associés, téléchargez une image basée sur alpine ou buster. Pour plus d'informations, consultez la page Images de conteneurs du proxy d'authentification Cloud SQL.

Vous pouvez extraire la dernière image sur votre ordinateur local en utilisant Docker avec la commande suivante :

docker pull gcr.io/cloud-sql-connectors/cloud-sql-proxy:2.14.1

Autres systèmes d'exploitation

Pour les autres systèmes d'exploitation non inclus ici, vous pouvez compiler le proxy d'authentification Cloud SQL à partir de la source.

Obtenir le nom de connexion de l'instance

  1. Dans Google Cloud Console, accédez à la page Instances Cloud SQL.

    Accéder à la page Instances Cloud SQL

  2. Cliquez sur le nom de l'instance pour ouvrir la page Présentation.
  3. Dans la section Se connecter à cette instance, copiez le nom de la connexion. Le nom de la connexion est au format projectID:region:instanceID.

Démarrer le proxy d'authentification Cloud SQL

Démarrez le proxy d'authentification Cloud SQL dans son propre terminal afin de pouvoir surveiller sa sortie. Remplacez INSTANCE_CONNECTION_NAME par le nom de connexion de l'instance que vous avez copié à l'étape précédente.

Pour les environnements Linux, lancez le proxy d'authentification Cloud SQL à l'aide de la commande suivante :

./cloud-sql-proxy INSTANCE_CONNECTION_NAME

Dans PowerShell sous Windows, lancez le proxy d'authentification Cloud SQL à l'aide de la commande suivante :

.\cloud-sql-proxy.exe INSTANCE_CONNECTION_NAME

Un message de ce type s'affiche :

Listening on 127.0.0.1:5432 for INSTANCE_CONNECTION_NAME
Ready for new connections

Exécutez la commande suivante en remplaçant DB_NAME par le nom de la base de données Cloud SQL :

psql "host=127.0.0.1 port=5432 sslmode=disable dbname=DB_NAME user=postgres"

Dans l'invite de saisie de mot de passe, saisissez le mot de passe de votre compte PostgreSQL.

Vérifiez que l'invite PostgreSQL s'affiche. Vous vous êtes connecté à votre base de données à l'aide du client psql.

Revenez à la fenêtre de terminal dans laquelle vous avez démarré le proxy d'authentification Cloud SQL. Un message semblable au suivant doit s'afficher :

New connection for myInstance

Effectuer un nettoyage

Pour éviter que les ressources utilisées sur cette page soient facturées sur votre compte Google Cloud, procédez comme suit :

  1. Dans Google Cloud Console, accédez à la page Instances Cloud SQL.

    Accéder à la page Instances Cloud SQL

  2. Sélectionnez l'instance myinstance pour ouvrir la page Détails de l'instance.
  3. Dans la barre d'icônes en haut de la page, cliquez sur Supprimer.
  4. Dans la fenêtre Supprimer l'instance, saisissez le nom de l'instance, puis cliquez sur Supprimer.

Étapes de nettoyage facultatives

Si vous n'utilisez pas les API activées dans le cadre de ce démarrage rapide, vous pouvez les désactiver.

  • API activées dans ce guide de démarrage rapide :
    • API Cloud SQL Admin
  1. Dans Google Cloud Console, accédez à la page API.

    Accéder aux API

  2. Sélectionnez l'API Cloud SQL Admin, puis cliquez sur le bouton Désactiver l'API.

Étapes suivantes