L'optimisation de vos services Cloud Run réduit les dépenses en alignant l'allocation des ressources sur la demande réelle. La mise en œuvre de configurations rentables évite le surprovisionnement tout en maintenant la fiabilité et les performances du service. Il n'existe pas de solution universelle pour l'optimisation des coûts. Il est important de surveiller vos besoins, votre budget et vos ressources pour déterminer ce qui vous convient le mieux.
Les bonnes pratiques décrites dans ce document sont spécifiques à Cloud Run. Elles ne s'appliquent pas aux autres Google Cloud produits.
Configuration de ressources
L'optimisation des coûts de vos services implique de prendre en compte de nombreuses configurations différentes. Adaptez ces configurations à vos besoins pour créer des services fiables et rentables.
Sélectionner la région appropriée
L'emplacement de déploiement de votre service a une incidence sur votre coût total. Cloud Run utilise un modèle de tarification régionale à deux niveaux. Les régions de niveau 1 offrent un coût par processeur virtuel et par mémoire inférieur à celui des régions de niveau 2. Envisagez donc de déployer votre service dans une région de niveau 1.
Exiger l'authentification
Lorsque vous configurez un service Cloud Run, vous pouvez choisir l'une des deux options d'authentification suivantes :
- Autoriser l'accès public : les vérifications d'authentification ne sont pas requises.
- Exiger l'authentification : seuls les utilisateurs authentifiés peuvent accéder à votre service Cloud Run.
Nous vous recommandons d'exiger l'authentification, sauf si vous avez besoin d'autoriser l'accès public. Cela permet d'éviter les requêtes indésirables qui pourraient entraîner des coûts.
Si vous gérez les utilisateurs avec Identity-Aware Proxy (IAP), IAP peut avoir ses propres coûts associés.
Comparer la facturation basée sur les instances et la facturation basée sur les requêtes
Les services Cloud Run disposent de deux paramètres de facturation :
- Facturation basée sur les requêtes (par défaut) : vous êtes facturé par requête, plus un tarif par seconde plus élevé pour le processeur virtuel et la mémoire consommés lors du traitement des requêtes.
- Facturation basée sur les instances : vous êtes facturé pour toute la durée de vie d'une instance. Aucun frais par requête n'est facturé, et les tarifs par seconde pour le processeur virtuel et la mémoire sont inférieurs.
Pour les services dont le trafic est constant et varie lentement, envisagez d'utiliser la facturation basée sur les instances. Les économies réalisées grâce à des tarifs de calcul plus bas et à l'absence de frais par requête compensent le coût du temps d'inactivité entre les requêtes. Pour les services dont le trafic est sporadique, irrégulier ou en pic, envisagez d'utiliser la facturation basée sur les requêtes. Si vous ne savez toujours pas quel paramètre de facturation utiliser, consultez l'outil de recommandation. L'outil de recommandation examine le trafic reçu par votre service Cloud Run au cours du mois passé et vous recommande de passer de la facturation basée sur les requêtes à la facturation basée sur les instances si cela est moins cher.
Configurer le scaling du service au niveau du service
Pour établir une base de référence de sécurité des coûts, configurez le nombre maximal d'instances pour votre service. Définir un nombre maximal plus élevé donne la priorité à la disponibilité, mais introduit des risques de facturation potentiels en cas de pics de trafic inattendus ou de mauvaises configurations. Vous devez configurer ce paramètre au niveau du service lorsque vous déployez initialement votre service pour établir une base de référence des coûts. Pour obtenir des outils de contrôle des coûts supplémentaires, consultez les quotas d'allocation de ressources ou les budgets et alertes de facturation.
Optimiser l'utilisation du processeur et de la mémoire
Le coût de votre service Cloud Run est affecté par sa configuration de processeur/mémoire et par la durée d'activité de votre service, entre autres facteurs. Le surprovisionnement de vos ressources peut augmenter vos coûts. Pour déterminer la configuration la plus adaptée à votre service :
- Établissez une configuration de base.
- Surveillez vos métriques tout en testant les métriques d'utilisation du processeur et de la mémoire dans Cloud Monitoring.
- Ajustez votre configuration si nécessaire.
Si l'utilisation du processeur est constamment faible en cas de charge maximale, envisagez de réduire l'allocation de processeurs virtuels. Si la latence est élevée, envisagez d'augmenter l'allocation de processeurs virtuels.
Si l'utilisation de la mémoire est constamment faible, envisagez de réduire la mémoire allouée. Si la latence est élevée et que l'utilisation de la mémoire est proche de 100%, envisagez d'augmenter la mémoire allouée. Si vous rencontrez des erreurs de mémoire insuffisante, vous devez augmenter la mémoire allouée ou modifier votre application pour éviter les fuites de mémoire ou utiliser moins de mémoire. Consultez le tableau de bord Cloud Monitoring pour mieux comprendre votre utilisation de la mémoire.
Configurer le GPU
Tous les services Cloud Run qui utilisent des GPU doivent être configurés avec la facturation basée sur les instances. Cela signifie que les instances Cloud Run sont facturées pour l'ensemble de leur cycle de vie, même lorsqu'aucune requête entrante n'est reçue. Les configurations minimales de processeur et de mémoire requises pour les GPU ont également une incidence sur le coût de votre service Cloud Run. Par défaut, la redondance zonale des GPU est activée. La désactivation de la redondance zonale des GPU entraîne un coût par seconde et par GPU inférieur, mais ne garantit pas la capacité réservée pour les scénarios de basculement.
Optimiser les coûts de mise en réseau
Lorsque vous configurez les options de mise en réseau de votre service, tenez compte des points suivants :
- Colocalisez vos ressources : essayez de déployer vos services Cloud Run dans la même région que vos bases de données backend (comme Cloud SQL ou Firestore) et vos buckets Cloud Storage. Le transfert de données entre Google Cloud les ressources d'une même région est sans frais.
- Passez à la sortie VPC directe : si vous acheminez le trafic de manière sécurisée vers les ressources internes du réseau VPC, envisagez de passer des connecteurs d'accès au VPC sans serveur à la sortie VPC directe. La sortie VPC directe passe à zéro, ce qui élimine la surcharge de calcul de base et les coûts d'inactivité associés aux instances de connecteur.
- Utilisez Cloud CDN : déchargez les éléments statiques et le contenu pouvant être mis en cache en plaçant Cloud CDN devant vos services Cloud Run. La diffusion de données à partir du réseau périphérique est nettement moins chère que le paiement de la sortie Internet standard directement à partir de Cloud Run.
- Surveillez la sortie Internet : le trafic entrant (entrée) est toujours sans frais, et vous bénéficiez de 1 Gio de transfert de données Internet sortant sans frais par mois en Amérique du Nord. Concentrez vos efforts de surveillance sur le trafic sortant qui dépasse les limites régionales ou qui dépasse le niveau sans frais.
Configurer les paramètres de simultanéité
Plus il y a d'instances qui traitent des requêtes, plus Cloud Run alloue de processeur et de mémoire à des coûts plus élevés. Un paramètre de simultanéité plus élevé permet à moins d'instances de gérer le même volume de requêtes, ce qui peut réduire les coûts. Toutefois, le code de l'application doit être en mesure de gérer efficacement les requêtes parallèles. Pour en savoir plus, consultez la section Ajuster la simultanéité pour l'autoscaling et l'utilisation des ressources.
Remises sur engagement d'utilisation
Les remises sur engagement d'utilisation vous permettent de bénéficier de prix réduits en échange de votre engagement à utiliser Cloud Run en continu pendant une période spécifiée. Les remises sur engagement d'utilisation s'appliquent au niveau d'un compte de facturation Cloud. Vous pouvez acheter des remises sur engagement d'utilisation flexibles Compute pour les ressources Cloud Run. Les remises sur engagement d'utilisation flexibles Compute ne s'appliquent pas aux GPU ni à la mise en réseau. Pour en savoir plus, consultez la section Remise sur engagement d'utilisation flexible Compute.
Outils utiles
Vous pouvez utiliser les outils suivants pour mieux comprendre vos coûts et éviter les dépassements de coûts.
Présentation de Cloud Run : panneau "Facturation"
La page de présentation de Cloud Run affiche les coûts par nom de ressource dans le panneau "Facturation". Les chiffres reflètent les coûts bruts pour les périodes sélectionnées par ressource. Cet outil vous aide à mieux comprendre le coût de vos ressources.
Alertes budgétaires
Créez des alertes budgétaires dans Cloud Billing pour suivre vos coûts réels par rapport à vos coûts prévus. Une alerte budgétaire est un mécanisme d'alerte qui déclenche des notifications lorsque des seuils de dépenses sont dépassés, et non un plafond de dépenses strict. Il existe un délai de données de facturation qui peut avoir une incidence sur le moment où vous recevez des alertes.
Plafonds de dépenses budgétaires
Si vous configurez des plafonds de dépenses budgétaires Cloud Billing spend caps dans la console Cloud Billing, ces plafonds s'appliquent automatiquement à tous les types de ressources Cloud Run de votre projet.
Vous pouvez surveiller la progression de votre plafond de dépenses directement depuis la page de présentation de la console Cloud Run. Lorsque vous atteignez un plafond de dépenses, Google Cloud toutes les charges de travail Cloud Run sont mises en pause pour éviter d'autres coûts pour les ressources Cloud Run suivantes :
- Services : tout service existant ne pourra pas diffuser de trafic et renverra des erreurs
5xx. - Tâches : les nouvelles exécutions de tâches ne pourront pas démarrer, et les tâches en cours ne pourront pas se terminer.
- Pools de nœuds de calcul : toutes les instances existantes cesseront de traiter les tâches.
Si vous dépassez votre plafond de dépenses, vous recevrez une notification d'alerte et une bannière d'application s'affichera dans la console Cloud Run. Pour reprendre les opérations, vous devez supprimer ou ajuster le plafond sur la page de présentation de la console Cloud Run.
Cloud Billing
Cloud Billing est un ensemble d'outils qui vous aide à suivre et à comprendre vos Google Cloud dépenses. Ces outils vous aident à surveiller vos coûts d'utilisation, à prévoir vos dépenses et à identifier les opportunités de réduction des coûts.
Explorateur de coûts
L'explorateur de coûts vous permet de comprendre le coût et l'utilisation de vos ressources. Utilisez l'explorateur de coûts pour :
- filtrer vos ressources par coût afin d'identifier les plus coûteuses ;
- comprendre la proportion des coûts générés par des configurations telles que les processeurs virtuels, les GPU, la mise en réseau, etc. ;
- suivre l'impact des modifications apportées à la configuration de vos ressources sur votre facture mensuelle.
Google Cloud Simulateur de coût
La Google Cloud présentation de la tarification contient des informations permettant de mieux comprendre le modèle de Google Cloud tarification. Vous y trouverez également la liste de prix détaillée. Vous pouvez estimer vos coûts en ajoutant et en configurant des produits à l'aide du simulateur de coût.
Outil de recommandation
L'outil de recommandation est un outil qui fournit des recommandations d'utilisation et des insights pour les produits Cloud.
L'outil de recommandation de Google examine automatiquement le trafic reçu par votre service Cloud Run au cours du mois passé et recommande de passer de la facturation basée sur les requêtes à la facturation basée sur les instances si cela est moins cher.Optimisation de Cloud Hub
Vous pouvez afficher des données récapitulatives sur les coûts, des données d'utilisation et des recommandations d'optimisation des coûts pour les Google Cloud services sur la page Optimisation de Cloud Hub.