Vous pouvez choisir la quantité de mémoire à fournir pour votre pool de nœuds de calcul Cloud Run. Cette page explique comment spécifier la quantité de mémoire disponible pour votre pool de nœuds de calcul.
Comprendre l'utilisation de la mémoire
Les instances Cloud Run qui dépassent la limite de mémoire autorisée sont arrêtées.
La mémoire disponible pour votre instance doit être suffisante pour :
- Exécution de l'exécutable du pool de nœuds de calcul, car l'exécutable doit être chargé en mémoire
- Allocation de mémoire dans le processus de votre pool de nœuds de calcul
- Écriture de fichiers dans le système de fichiers
La taille de l'image de conteneur déployée n'affecte pas la mémoire disponible pour l'instance.
Définir et mettre à jour des limites de mémoire
Vous pouvez définir des limites de mémoire sur les pools de nœuds de calcul Cloud Run. Par défaut, la mémoire allouée à chaque pool de nœuds de calcul est de 512 Mio.
Mémoire requise lorsque vous définissez une valeur de processeur
Lorsque vous définissez une valeur de processeur, la mémoire suivante est requise :
| Processeurs | Mémoire requise |
|---|---|
| 1 vCPU | 128 Mio à 4 Gio |
| 2 vCPU | 128 Mio à 8 Gio |
| 4 vCPU | 2 à 16 Gio |
| 6 vCPU | 4 à 24 Gio |
| 8 vCPU | 4 à 32 Gio |
Quantité maximale de mémoire
La quantité maximale de mémoire que vous pouvez configurer est de 32 gibioctets (32 Gi).
Mémoire minimale
Le paramètre de mémoire minimal est de 512 Mio.
Rôles requis
Pour obtenir les autorisations nécessaires pour configurer et déployer des pools de nœuds de calcul Cloud Run, demandez à votre administrateur de vous accorder les rôles IAM suivants :
-
Développeur Cloud Run (
roles/run.developer) sur le pool de nœuds de calcul Cloud Run -
Utilisateur du compte de service (
roles/iam.serviceAccountUser) sur l'identité du service
Pour obtenir la liste des rôles et des autorisations IAM associés à Cloud Run, consultez les sections Rôles IAM Cloud Run et Autorisations IAM Cloud Run. Si votre pool de nœuds de calcul Cloud Run communique avec des APIGoogle Cloud , telles que des bibliothèques clientes Cloud, consultez le guide de configuration de l'identité du service. Pour en savoir plus sur l'attribution de rôles, consultez les pages Autorisations de déploiement et Gérer les accès.
Configurer les limites de mémoire
Tout changement de configuration entraîne la création d'une révision. Les révisions ultérieures obtiennent aussi automatiquement le même paramètre de configuration, à moins que vous ne le mettiez explicitement à jour.
Vous pouvez définir des limites de mémoire pour un pool de workers Cloud Run à l'aide de laGoogle Cloud console, de Google Cloud CLI, de YAML ou de Terraform :
Console
Dans la console Google Cloud , accédez à Cloud Run :
Sélectionnez Pools de nœuds de calcul dans le menu, puis cliquez sur Déployer un conteneur pour configurer un nouveau pool de nœuds de calcul. Si vous configurez un pool de nœuds de calcul existant, cliquez sur celui-ci, puis sur Modifier et déployer la nouvelle révision.
Si vous configurez un nouveau pool de nœuds de calcul, remplissez la page initiale du pool de nœuds de calcul, puis cliquez sur Conteneur(s), Volumes, Mise en réseau, Sécurité pour développer la page de configuration des pools de nœuds de calcul.
Cliquez sur l'onglet Conteneur.
- Sélectionnez la taille de mémoire dans la liste Mémoire.
Cliquez sur Créer ou Déployer.
gcloud
Vous pouvez mettre à jour l'allocation de mémoire d'un pool de nœuds de calcul donné à l'aide de la commande suivante :
gcloud beta run worker-pools update WORKER_POOL --memory SIZE
Remplacez les éléments suivants :
- WORKER_POOL : nom de votre pool de nœuds de calcul
- SIZE : taille de la mémoire issue du tableau des processeurs et de la mémoire.
Le format de la taille est un nombre fixe ou à virgule flottante suivi d'une unité :
GouMcorrespondant respectivement au gigaoctet ou au mégaoctet, ou qui utilise des équivalents en puissance de deux :GiouMicorrespondant respectivement au gibioctet ou au mébioctet.
Lors du déploiement, vous pouvez également définir des limites de mémoire à l'aide de la commande suivante :
gcloud beta run worker-pools deploy --image IMAGE_URL --memory SIZE
Remplacez les éléments suivants :
- IMAGE_URL : référence à l'image de conteneur contenant le pool de nœuds de calcul, par exemple
us-docker.pkg.dev/cloudrun/container/worker-pool:latest. - SIZE : taille de la mémoire issue du tableau des processeurs et de la mémoire. Le format de la taille est un nombre fixe ou à virgule flottante suivi d'une unité : G ou M correspondant respectivement au gigaoctet ou au mégaoctet, ou qui utilise des équivalents en puissance de deux : Gi ou Mi correspondant respectivement au gibioctet ou au mébioctet.
YAML
Si vous créez un pool de nœuds de calcul, ignorez cette étape. Si vous mettez à jour un pool de nœuds de calcul existant, téléchargez sa configuration YAML :
gcloud beta run worker-pools describe WORKER_POOL --format export > workerpool.yaml
L'exemple suivant contient la configuration YAML :
apiVersion: run.googleapis.com/v1 kind: WorkerPool metadata: name: WORKER_POOL annotations: run.googleapis.com/launch-stage: BETA spec: template: spec: containers: - image: IMAGE_URL resources: limits: memory: SIZE
Remplacez les éléments suivants :
- WORKER_POOL : nom de votre pool de nœuds de calcul Cloud Run.
- IMAGE_URL : référence à l'image de conteneur contenant le pool de nœuds de calcul, par exemple
us-docker.pkg.dev/cloudrun/container/worker-pool:latest. - SIZE : taille de mémoire choisie.
Le format est un nombre fixe ou à virgule flottante suivi d'une unité :
GouMcorrespondant au gigaoctet ou au mégaoctet, respectivement, ou qui utilise des équivalents en puissance de deux :GiouMicorrespondant respectivement à un gibioctet ou à un mébioctet.
Créez ou mettez à jour le pool de nœuds de calcul à l'aide de la commande suivante :
gcloud beta run worker-pools replace workerpool.yaml
Terraform
Pour savoir comment appliquer ou supprimer une configuration Terraform, consultez Commandes Terraform de base.
resource "google_cloud_run_v2_worker_pool" "default" {
name = "WORKER_POOL"
location = "REGION"
launch_stage = "BETA"
template {
containers {
image = "IMAGE_URL"
resources {
limits = {
memory = "SIZE"
}
}
}
}
}
Remplacez les éléments suivants :
- WORKER_POOL : nom du pool de nœuds de calcul.
- REGION : la région Google Cloud . Par exemple, europe-west1.
- IMAGE_URL : référence à l'image de conteneur contenant le pool de nœuds de calcul, par exemple
us-docker.pkg.dev/cloudrun/container/worker-pool:latest - SIZE : taille de la mémoire issue du tableau des processeurs et de la mémoire.
Le format de la taille est un nombre fixe ou à virgule flottante suivi d'une unité :
GouMcorrespondant respectivement au gigaoctet ou au mégaoctet, ou qui utilise des équivalents en puissance de deux :GiouMicorrespondant respectivement au gibioctet ou au mébioctet.
Afficher la configuration de la mémoire pour le pool de nœuds de calcul
Dans la console Google Cloud , accédez à Cloud Run :
Cliquez sur Pools de nœuds de calcul pour afficher la liste des pools de nœuds de calcul déployés.
Cliquez sur le pool de workers que vous souhaitez examiner pour afficher son volet d'informations.
Cliquez sur l'onglet Conteneurs pour afficher la configuration de la mémoire du pool de nœuds de calcul pour chaque conteneur.