Configurer un service Cloud Run dans App Design Center

Cloud Run est une plate-forme d'application entièrement gérée qui vous permet d'exécuter des conteneurs directement sur l'infrastructure évolutive de Google. Pour en savoir plus, consultez la présentation de Cloud Run.

Ce document décrit les connexions et les paramètres que vous pouvez configurer lorsque vous utilisez App Design Center pour créer un service Cloud Run. Les paramètres de configuration sont basés sur le module Terraform terraform-google-cloud-run.

Connexions des composants

Le tableau suivant inclut les composants que vous pouvez connecter à un service Cloud Run, ainsi que les mises à jour apportées à votre application et à son code Terraform généré.

Composant connecté

Mises à jour des applications

Informations générales

Secret Manager
  • Le service Cloud Run peut référencer les données secrètes.
  • Le champ Données secrètes de Secret Manager est référencé par le champ env_secret_vars de Cloud Run.
  • Le rôle roles/secretmanager.secretAccessor est ajouté au compte de service Cloud Run.
Configurer des secrets pour les services

Compte de service

  • Le service Cloud Run utilise le compte de service comme identité de service.
  • Le rôle roles/run.invoker est ajouté au compte de service.
  • L'adresse e-mail du compte de service et les informations IAM sont ajoutées aux variables d'environnement Cloud Run.
Authentification de service à service
AlloyDB pour PostgreSQL
  • Le service Cloud Run peut se connecter à l'instance AlloyDB pour PostgreSQL.
  • Les métadonnées de ressources AlloyDB pour PostgreSQL sont ajoutées aux variables d'environnement Cloud Run.
  • Le rôle roles/alloydb.admin AlloyDB pour PostgreSQL est ajouté au compte de service Cloud Run.
Connexion depuis Cloud Run
BigQuery
  • Le service Cloud Run peut interagir avec l'ensemble de données BigQuery.
  • Les métadonnées de ressources BigQuery sont ajoutées aux variables d'environnement Cloud Run.
  • Le rôle BigQuery roles/bigquery.dataEditor est ajouté au compte de service Cloud Run.
Présentation de BigQuery

Bigtable

  • Le service Cloud Run peut effectuer des fonctions d'administration sur l'instance Bigtable.
  • Les informations sur les métadonnées des ressources Bigtable sont ajoutées aux variables d'environnement Cloud Run.
  • Le rôle roles/bigtable.admin est ajouté au compte de service Cloud Run.
Présentation de Bigtable

Autre service Cloud Run

  • Le service Cloud Run source peut envoyer du trafic vers le service Cloud Run de destination.
  • Le service Cloud Run source contient l'URI du service Cloud Run de destination dans ses variables d'environnement.
Qu'est-ce que Cloud Run ?

Cloud SQL (MySQL)

  • Le service Cloud Run peut lire et écrire des données dans l'instance Cloud SQL (MySQL).
  • Les métadonnées de connexion Cloud SQL sont ajoutées au service Cloud Run.
  • Les rôles roles/cloudsql.instanceUser et roles/cloudsql.client sont ajoutés au compte de service Cloud Run.
  • Le compte de service Cloud Run est ajouté en tant qu'utilisateur IAM à l'instance Cloud SQL.
Connexion depuis Cloud Run

Cloud SQL (PostgreSQL)

  • Le service Cloud Run peut lire et écrire des données dans l'instance Cloud SQL (PostgreSQL).
  • Les métadonnées de connexion Cloud SQL sont ajoutées au service Cloud Run.
  • Les rôles roles/cloudsql.instanceUser et roles/cloudsql.client sont ajoutés au compte de service Cloud Run.
  • Le compte de service Cloud Run est ajouté en tant qu'utilisateur IAM à l'instance Cloud SQL.
Connexion depuis Cloud Run

Cloud Storage

  • Le service Cloud Run peut gérer les objets du bucket Cloud Storage.
  • Les informations IAM du compte de service Cloud Run sont ajoutées au bucket Cloud Storage.
  • Le rôle roles/storage.objectAdmin est attribué au compte de service Cloud Run.
Se connecter aux services Google Cloud

Backend Global Cloud Load Balancing

  • L'équilibreur de charge peut distribuer le trafic entrant vers le service Cloud Run.
  • Le service Cloud Run est ajouté en tant que point de terminaison de backend dans la configuration des backends de NEG sans serveur Cloud Load Balancing.
Configurer un équilibreur de charge d'application externe mondial avec Cloud Run

Memorystore pour Redis

  • Le service Cloud Run peut mettre en cache les données dans l'instance Memorystore pour Redis.
  • Les informations de connexion Memorystore pour Redis sont ajoutées aux variables d'environnement Cloud Run.
  • Le rôle roles/redis.editor est ajouté au compte de service Cloud Run.
Se connecter à une instance Redis à partir d'un service Cloud Run

Pub/Sub

  • Le service Cloud Run peut recevoir des messages ou publier des messages dans le sujet Pub/Sub.
  • L'ID du sujet Pub/Sub est ajouté aux variables d'environnement Cloud Run.
  • Les rôles roles/pubsub.publisher et roles/pubsub.subscriber sont ajoutés au compte de service Cloud Run.
  • Le service Cloud Run est ajouté aux champs d'abonnement push et pull Pub/Sub.
Tutoriel : Utiliser Pub/Sub avec Cloud Run

Backend régional Cloud Load Balancing

  • L'équilibreur de charge peut distribuer le trafic entrant vers le service Cloud Run.
  • Le service Cloud Run est ajouté en tant que point de terminaison de backend dans la configuration des backends de NEG sans serveur Cloud Load Balancing.
Configurer un équilibreur de charge d'application externe régional avec Cloud Run

Interface régionale Cloud Load Balancing

  • Les adresses IP HTTP et HTTPS de l'équilibreur de charge sont disponibles pour l'application exécutée dans le conteneur Cloud Run.
  • Les métadonnées d'adresse Cloud Load Balancing sont ajoutées aux variables d'environnement Cloud Run.
Présentation des règles de transfert

Spanner

  • Le service Cloud Run peut gérer l'instance Spanner.
  • Les informations de connexion Spanner sont ajoutées aux variables d'environnement Cloud Run.
  • Le rôle roles/spanner.databaseAdmin est ajouté au compte de service Cloud Run.
  • Les informations IAM du compte de service Cloud Run sont ajoutées à l'instance Spanner.
Se connecter aux services Google Cloud

Vertex AI

  • Le service Cloud Run peut interagir avec les services Vertex AI.
  • Le rôle roles/aiplatform.user est ajouté au compte de service Cloud Run.
Héberger des applications et des agents d'IA sur Cloud Run

Paramètres de configuration requis

Si votre modèle inclut un composant Cloud Run, vous devez configurer les paramètres suivants avant de le déployer.

Nom du paramètre

Description et contraintes

Informations générales

ID du projet

Projet dans lequel vous souhaitez déployer la ressource Cloud Run.

Configurer les composants

Région

Emplacement de déploiement du service Cloud Run.

Emplacements Cloud Run

Nom du service

name Service Cloud Run

Paramètres de configuration facultatifs

Les paramètres suivants sont facultatifs. Pour afficher les paramètres avancés, dans la zone Configuration, sélectionnez Afficher les champs avancés.

Fonctionnalité

Sous-fonctionnalité

Nom du paramètre

Description et informations sur les contraintes

Informations générales

Conteneurs

Nom du conteneur

name Créer des conteneurs

Image du conteneur

image Déployer des images de conteneurs dans Cloud Run

Working Dir

Répertoire de travail du conteneur. Si aucune valeur n'est spécifiée, la valeur par défaut de l'environnement d'exécution du conteneur est utilisée, qui peut être configurée dans l'image du conteneur.

workingDir

Dépend du conteneur

dependsOn[] Configurer l'ordre de démarrage des conteneurs pour les déploiements side-car

Arguments du conteneur

args[] Configurer des conteneurs pour les services

Commande de conteneur

command Configurer des conteneurs pour les services
Variables d'environnement

Clé

name Variables d'environnement pour les services

Valeur

value Variables d'environnement pour les services
Variables secrètes d'environnement

Clé

EnvVarSource Gérer les secrets

Secret

secret Gérer les secrets

Version

version Gérer les secrets
Installations de volumes

Nom

name Connexion depuis Cloud Run

Chemin de montage

mountPath Connexion depuis Cloud Run
Ports

Nom

name Utiliser HTTP/2 pour les services

Port de conteneurs

containerPort Utiliser HTTP/2 pour les services
Ressources

Processeur

limites Configurer les limites de processeur pour les services

Mémoire

limites Configurer les limites de mémoire pour les services

Processeur inactif

Indique si le processeur n'est alloué que lors des requêtes.

cpuIdle

Optimisation du processeur au démarrage

startupCPUBoost Configurer l'optimisation du processeur au démarrage
Vérification du démarrage

Seuil d'échec

failureThreshold Configurer des vérifications d'état de conteneur pour les services

Secondes de délai initial

initialDelaySeconds Configurer des vérifications

Délai avant expiration (en secondes)

timeoutSeconds Configurer des vérifications

Secondes de la période

periodSeconds Configurer des vérifications

Chemin HTTP Get

path Configurer des vérifications

Port de récupération HTTP

port Configurer des vérifications

Nom des en-têtes HTTP

name Configurer des vérifications

Valeur des en-têtes HTTP

value Configurer des vérifications

Port du socket TCP

port Vérification de démarrage TCP par défaut

Port GRPC

port Configurer des vérifications

Service GRPC

service Configurer des vérifications

Vérification de l'activité

livenessProbe Cas d'utilisation

Description

description Définir des descriptions de services

Créer un compte de service

Créez un compte de service pour le service Cloud Run.

Configurer l'identité du service pour les jobs

Rôles du projet de compte de service

Rôles à attribuer au compte de service que vous venez de créer. Activez Créer un compte de service et ne saisissez rien dans Compte de service.

Configurer l'identité du service pour les jobs

Entrée

IngressTraffic Restreindre l'entrée réseau pour Cloud Run

Membres

Utilisateurs et comptes de service pouvant appeler le service. Pour un accès public, saisissez allUsers. Pour accorder l'accès aux utilisateurs Google connectés, saisissez allAuthenticatedUsers ou saisissez la liste des utilisateurs et comptes de service spécifiques. Pour en savoir plus, consultez membres.

Configurer l'identité du service pour les jobs

Accès VPC

Connecteur

connector VPC avec connecteurs

Sortie egress Contrôler le trafic du service de sortie

Interfaces réseau

Réseau réseau Déployer un service
Sous-réseau subnetwork Déployer un service
Tags tags Déployer un service

Protection contre la suppression de Cloud Run

Empêche Terraform de détruire ou de recréer des jobs et des services Cloud Run.

deletion_protection

Activer le side-car Prometheus

Activez le side-car Prometheus dans l'instance Cloud Run.

Écrire des métriques Prometheus à l'aide du side-car Prometheus

Volumes

Nom

name Configurer un volume en mémoire
Secret Secret secret Rendre un secret accessible à Cloud Run
Mode par défaut defaultMode
Chemin d'accès path Rendre un secret disponible pour Cloud Run
Version version Rendre un secret disponible pour Cloud Run
Mode mode Rendre un secret disponible pour Cloud Run
Instance Cloud SQL Instances instances[] Connexion depuis Cloud Run
Répertoire vide Moyenne medium Configurer les installations de volume en mémoire pour les services
Limite de taille sizeLimit Configurer les installations de volume en mémoire pour les services
GCS Bucket bucket Configurer des installations de volume Cloud Storage pour les services
Lecture seule readOnly Configurer des installations de volume Cloud Storage pour les services
NFS Serveur server Configurer les installations de volume NFS pour les services
Chemin d'accès path Configurer les installations de volume NFS pour les services
Lecture seule readOnly Configurer les installations de volume NFS pour les services

Scaling de service

Nombre minimal d'instances

minInstanceCount Définir le nombre minimal d'instances pour les services

Révision

révision Révisions du service Cloud Run

Scaling de modèles

Nombre minimal d'instances

minInstanceCount Définir le nombre minimal d'instances pour les services
Nombre maximal d'instances maxInstanceCount À propos du nombre maximal d'instances

Clé de chiffrement

encryptionKey Utiliser les clés de chiffrement gérées par le client

Simultanéité maximale des requêtes d'instance

maxInstanceRequestConcurrency Nombre maximal de requêtes simultanées pour les services

Affinité de session

sessionAffinity Définir l'affinité de session pour les services

Environnement d'exécution

executionEnvironment À propos des environnements d'exécution de service

Trafic

Type

type Rollbacks, déploiements progressifs et migration du trafic
Pourcentage percent Rollbacks, déploiements progressifs et migration du trafic
Révision révision Rollbacks, déploiements progressifs et migration du trafic
Tag tag Rollbacks, déploiements progressifs et migration du trafic

Étiquettes de service

Clé

labels Configurer des libellés pour les services
Valeur labels Configurer des libellés pour les services

Annotations de service

Clé

annotations annotations
Valeur annotations annotations

Client

Nom

Identifiant arbitraire pour le client API.

client
Version

Identifiant arbitraire pour l'identifiant de version.

clientVersion

Étape de lancement

LaunchStage Étapes de lancement des produits

Audiences personnalisées

customAudience Définir des audiences personnalisées pour les services

Autorisation binaire

Justification du mode "bris de glace"

breakglassJustification Utiliser le mode "bris de glace"
Utiliser la valeur par défaut useDefault Utiliser l'autorisation binaire

Libellés de modèle

Clé

labels Configurer des libellés pour les services
Valeur labels Configurer des libellés pour les services

Annotations de modèle

Clé

annotations annotations
Valeur annotations annotations

Délai avant expiration

timeout Définir le délai avant expiration des requêtes pour les services

Compte de service

serviceAccount Configurer l'identité du service pour les services