Se connecter à Cloud SQL pour SQL Server à partir des fonctions Cloud Run

Découvrez comment déployer un exemple d'application sur les fonctions Cloud Run connecté à une instance SQL Server à l'aide de la console Google Cloud et d'une application cliente.

En supposant que vous réalisiez toutes les étapes dans un délai raisonnable, les ressources créées dans ce guide de démarrage rapide coûtent généralement moins d'un dollar (USD).

Avant de commencer

  1. Connectez-vous à votre compte Google Cloud. Si vous débutez sur Google Cloud, créez un compte pour évaluer les performances de nos produits en conditions réelles. Les nouveaux clients bénéficient également de 300 $ de crédits gratuits pour exécuter, tester et déployer des charges de travail.
  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 APIs Cloud nécessaires pour exécuter un exemple d'application Cloud SQL sur les fonctions Cloud Run.

    Console

    Cliquez sur Activer les API pour activer les API requises dans ce guide de démarrage rapide.

    Activer les API

    Cela aura pour effet d'activer les API suivantes :

    • API Cloud Run functions
    • API Cloud SQL Admin
    • API Cloud Run Admin
    • API Cloud Build
    • API Artifact Registry
    • API Eventarc
    • API Compute Engine
    • API Service Networking
    • API Cloud Logging

    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 suivante à l'aide de Cloud Shell :

    gcloud services enable cloudfunctions.googleapis.com sqladmin.googleapis.com run.googleapis.com cloudbuild.googleapis.com artifactregistry.googleapis.com eventarc.googleapis.com compute.googleapis.com servicenetworking.googleapis.com pubsub.googleapis.com logging.googleapis.com

    Cette commande active les API suivantes :

    • API Cloud Run functions
    • API Cloud SQL Admin
    • API Cloud Run
    • API Cloud Build
    • API Artifact Registry
    • API Eventarc
    • API Compute Engine
    • API Service Networking
    • API Cloud Logging
  7. Ajoutez à votre utilisateur le rôle IAM Demandeur de fonctions Cloud Run.

    Ajouter le rôle

Configurer Cloud SQL

Créer une instance Cloud SQL

Créer une base de données

Console

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

    Accéder à la page Instances Cloud SQL

  2. Sélectionnez quickstart-instance.
  3. Dans le menu de navigation SQL, sélectionnez Bases de données.
  4. Cliquez sur Créer une base de données.
    1. Dans le champ Nom de la base de données de la boîte de dialogue Nouvelle base de données, saisissez quickstart-db.
    2. Cliquez sur Créer.

gcloud

Exécutez la commande gcloud sql databases create pour créer une base de données.

gcloud sql databases create quickstart-db --instance=quickstart-instance

Configurer un compte de service de fonctions Cloud Run

Configurez le compte de service utilisé par les fonctions Cloud Run afin de lui attribuer le rôle Client Cloud SQL qui inclut les autorisations nécessaires pour se connecter à Cloud SQL.

Console

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

    Accéder à IAM

  2. Pour le compte de service nommé Compte de service Compute Engine par défaut, cliquez sur l'icône en forme de crayon.
  3. Cliquez sur AJOUTER UN AUTRE RÔLE.
  4. Ajoutez le rôle nommé Client Cloud SQL.
  5. Cliquez sur Enregistrer.

gcloud

  1. Exécutez la commande gcloud suivante pour obtenir la liste des comptes de service de votre projet :
    gcloud iam service-accounts list
  2. Copiez l'adresse e-mail associée au compte de service Compute Engine.
  3. Exécutez la commande suivante pour attribuer le rôle Client Cloud SQL au compte de service Compute Engine :
    gcloud projects add-iam-policy-binding YOUR_PROJECT_ID \
      --member="serviceAccount:SERVICE_ACCOUNT_EMAIL" \
      --role="roles/cloudsql.client"

Créer une fonction

  1. Dans la console Google Cloud, accédez à la page Fonctions Cloud Run.

    Accéder aux fonctions Cloud Run

  2. Cliquez sur Créer une fonction.
  3. Pour l'option Environment (Environnement), sélectionnez 2nd gen (2e génération).
  4. Dans le champ Nom de la fonction, saisissez quickstart-function.
  5. Dans la section Authentification, cochez Autoriser les appels non authentifiés.
  6. Cliquez sur Suivant.
  7. Dans le menu Environnement d'exécution, sélectionnez l'un des langages suivants :
  8. Langue Numéro de version
    Go 1.20
    Python 3,10
  9. Dans le menu Code source, vérifiez que l'option Éditeur intégré est sélectionnée. Dans cette étape, vous allez utiliser la fonction fournie par défaut dans l'éditeur.

Déployer la fonction

  1. Au bas de la page Fonctios Cloud Run, cliquez sur Déployer. La console Google Cloud vous redirige vers la page des détails de la fonction.
  2. Une fois le déploiement de la fonction terminé, cliquez sur le lien URL pour afficher un navigateur Web avec le message Hello, World!.

Déployer l'exemple d'application Cloud SQL en tant que fonction

Vous allez configurer et déployer l'exemple d'application Cloud SQL en tant que fonction dans les fonctions Cloud Run. Tout d'abord, vous allez utiliser Cloud Shell pour configurer et créer l'exemple d'application. Vous utiliserez ensuite les fonctions Cloud Run pour déployer l'exemple d'application.

Configurer un exemple d'application Cloud SQL

Déployer l'application exemple

Les étapes permettant de déployer l'exemple sur les fonctions Cloud Run dépendent du type d'adresse IP que vous avez attribué à votre instance Cloud SQL.

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 quickstart-instance 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 boîte de dialogue Supprimer l'instance, saisissez quickstart-instance puis cliquez sur Supprimer pour supprimer l'instance.
  5. Dans la console Google Cloud, accédez à la page Fonctions Cloud Run.

    Accéder aux fonctions Cloud Run

  6. Cochez la case à côté du nom du service quickstart-function.
  7. Cliquez sur Supprimer en haut de la page Fonctions Cloud Run.

Étapes de nettoyage facultatives

Si vous n'utilisez pas le rôle Client Cloud SQL que vous avez attribué au compte de service Compute Engine, vous pouvez le supprimer.

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

    Accéder à IAM

  2. Cliquez sur l'icône de modification (en forme de crayon) pour le compte IAM nommé Compte de service Compute Engine par défaut.
  3. Supprimez le rôle Client Cloud SQL.
  4. Cliquez sur Enregistrer.

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 Compute Engine
    • API Cloud SQL Admin
    • API Cloud Run
    • API Container Registry
    • API Cloud Build
  1. Dans Google Cloud Console, accédez à la page API.

    Accéder aux API

  2. Sélectionnez l'API que vous souhaitez désactiver, puis cliquez sur le bouton Désactiver l'API.

Étape suivante

En fonction de vos besoins, vous pouvez en apprendre plus sur la création d'instances Cloud SQL.

Vous pouvez également découvrir comment créer des utilisateurs et des bases de données SQL Server pour votre instance Cloud SQL.

Pour en savoir plus sur la tarification, consultez la page Tarifs de Cloud SQL pour SQL Server.

En savoir plus :

  • Configurez votre instance Cloud SQL avec une adresse IP publique.
  • Configurez votre instance Cloud SQL avec une adresse IP privée.

Vous pouvez également en savoir plus sur la connexion à une instance Cloud SQL à partir d'autres applications Google Cloud :