Ce document explique comment utiliser les notifications budgétaires pour contrôler de manière sélective l'utilisation des ressources.
Lorsque vous désactivez la facturation sur un projet, tous les services s'arrêtent et toutes les ressources sont supprimées. Si vous avez besoin d'une réponse plus nuancée, vous pouvez contrôler les ressources de manière sélective. Par exemple, vous pouvez arrêter certaines ressources Compute Engine tout en laissant les ressources Cloud Storage intactes. L'arrêt de certaines ressources seulement réduit vos coûts sans désactiver complètement votre environnement.
Dans l'exemple suivant, le projet effectue des recherches sur plusieurs machines virtuelles (VM) Compute Engine et stocke les résultats dans des buckets Cloud Storage. En utilisant les notifications de budget comme déclencheur, une fois le budget dépassé, cette fonction Cloud Run arrête toutes les instances Compute Engine, mais n'affecte pas les résultats stockés.
Avant de commencer
Avant de commencer, vous devez effectuer les tâches suivantes :
Configurer une fonction Cloud Run
- Suivez la procédure décrite dans Créer une fonction Cloud Run. Assurez-vous de définir le type de déclencheur sur le même sujet Pub/Sub que celui que votre budget utilisera.
Ajoutez les dépendances suivantes :
Node.js
Copiez le code suivant dans votre fichier
package.json:Python
Copiez le code suivant dans votre fichier
requirements.txt:Copiez le code suivant dans votre fonction Cloud Run :
Node.js
Python
Définissez le point d'entrée sur la fonction à exécuter :
Node.js
Définissez le champ Point d'entrée sur
limitUse.Python
Définissez le champ Point d'entrée sur
limit_use.Consultez la liste des variables d'environnement définies automatiquement et déterminez si vous devez définir manuellement la variable GCP_PROJECT sur le projet exécutant les machines virtuelles.
Définissez le paramètre ZONE. Ce paramètre correspond à la zone dans laquelle les instances sont arrêtées lorsque le budget est dépassé.
Cliquez sur DÉPLOYER.
Configurer les autorisations du compte de service
Votre fonction Cloud Run s'exécute en tant que compte de service créé automatiquement. Pour contrôler l'utilisation, vous devez accorder au compte de service des autorisations sur tous les services du projet qu'il doit modifier en procédant comme suit :
- Identifiez le bon compte de service en consultant les informations de votre fonction Cloud Run. Le compte de service est répertorié au bas de la page.
Accédez à la page IAM dans la console Google Cloud pour définir les autorisations appropriées.
Vérifier que les instances sont arrêtées
Pour vous assurer que votre fonction fonctionne comme prévu, suivez les étapes de la section Tester une fonction Cloud Run.
Si l'opération réussit, vos VM Compute Engine dans la console Google Cloud sont arrêtées.
Étapes suivantes
Consultez d'autres exemples de notifications automatisées pour apprendre à effectuer les opérations suivantes :