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 optimiser les 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. Ces frais n'incluent pas les autres produits Google Cloud .
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 un impact sur votre coût total. Cloud Run utilise un modèle de tarification régional à deux niveaux. Les régions de niveau 1 offrent un coût par vCPU et par mémoire inférieur à celui des régions de niveau 2. Envisagez donc de déployer vos ressources 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 :
- Autoriser l'accès public : les contrôles d'authentification ne sont pas requis.
- 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 un besoin spécifique d'autoriser l'accès public. Cela permet d'éviter les requêtes indésirables susceptibles d'engendrer des coûts.
Si vous gérez les utilisateurs avec Identity-Aware Proxy (IAP), IAP peut entraîner des coûts supplémentaires.
Comparer la facturation basée sur les instances et la facturation basée sur les requêtes
Les services Cloud Run ont 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 les vCPU 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. Aucuns frais par requête ne sont appliqués, et les tarifs par seconde pour les processeurs virtuels et la mémoire sont inférieurs.
Pour les services dont le trafic est stable et varie lentement, envisagez d'utiliser la facturation basée sur les instances. Les économies réalisées grâce à des tarifs de calcul inférieurs et à l'absence de frais par requête l'emportent sur le coût du temps d'inactivité entre les requêtes. Pour les services dont le trafic est sporadique, irrégulier ou sujet à des pics, envisagez d'utiliser la facturation basée sur les requêtes. Si vous ne savez toujours pas quel paramètre de facturation utiliser, consultez Recommender. L'outil de recommandation examine le trafic reçu par votre service Cloud Run au cours du mois passé et fournit des recommandations pour 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 au niveau du service
Pour établir une 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 liés à des pics de trafic inattendus ou à des erreurs de configuration. Vous devez configurer ce paramètre au niveau du service lorsque vous déployez initialement votre service afin d'établir une référence de coût. Pour découvrir d'autres outils de contrôle des coûts, consultez Quotas d'allocation des ressources ou Budgets et alertes de facturation.
Optimiser l'utilisation du processeur et de la mémoire
Le coût de votre service Cloud Run dépend, entre autres, de sa configuration de processeur/mémoire et de sa durée d'activité. Le surprovisionnement de vos ressources peut augmenter vos coûts. Pour déterminer la configuration la mieux adaptée à votre service :
- Établissez une configuration de référence.
- 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 systématiquement faible en cas de charge de pointe, envisagez de réduire l'allocation de processeurs virtuels. Si la latence est élevée, envisagez d'augmenter l'allocation de vCPU.
Si l'utilisation de la mémoire est systématiquement 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 (OOM), 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 pour la facturation à l'instance. Cela signifie que les instances Cloud Run sont facturées pendant tout leur cycle de vie, même lorsqu'il n'y a aucune requête entrante. 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 réduit le coût par seconde et par GPU, 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 de backend (comme Cloud SQL ou Firestore) et vos buckets Cloud Storage. Le transfert de données entre les ressources Google Cloud au sein d'une même région est sans frais.
- Passer à la sortie VPC directe : si vous acheminez de manière sécurisée le trafic vers des ressources de réseau VPC internes, envisagez de passer à la sortie VPC directe à partir des connecteurs d'accès au VPC sans serveur. La sortie VPC directe effectue un scaling à la baisse jusqu'à zéro, ce qui élimine les coûts 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 de la périphérie est nettement moins coûteuse que le paiement d'une sortie Internet standard directement depuis Cloud Run.
- Surveiller le trafic de sortie Internet : le trafic entrant 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 de la région ou 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 ressources de processeur et de mémoire, ce qui entraîne 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 capable de gérer efficacement les requêtes parallèles. Pour en savoir plus, consultez Régler 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 de manière continue 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 souscrire 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 Remise flexible sur engagement d'utilisation de 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 de 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 de budget dans Cloud Billing pour suivre vos coûts réels par rapport à vos coûts planifiés. Une alerte budgétaire est un mécanisme d'alerte qui déclenche des notifications lorsque des seuils de dépenses sont franchis, et non un plafond de dépenses strict. Un délai de traitement des données de facturation peut avoir un impact sur le moment où vous recevez les alertes.
Plafonds de dépenses du budget
Lorsque vous configurez des plafonds de dépenses pour les budgets Cloud Billing dans la console Cloud Billing ou de manière programmatique à l'aide de l'API Cloud Billing Budget, 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 met en pause toutes les charges de travail Cloud Run pour éviter des frais supplémentaires sur les ressources Cloud Run suivantes :
- Services : les services existants ne pourront pas diffuser de trafic et renverront des erreurs
5xx. - Jobs : les nouvelles exécutions de tâches ne démarrent pas et les tâches en cours ne se terminent pas.
- Pools de nœuds de calcul : toutes les instances existantes cessent de traiter les tâches.
- Instances : toutes les instances en cours d'exécution s'arrêtent, les nouvelles instances ou les redémarrages ne démarrent pas, et les requêtes envoyées aux URL d'instance renvoient des erreurs
5xx.
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. Les plafonds de dépenses appliqués sont réinitialisés au début de chaque mois, le premier jour du cycle de facturation suivant. Cela débloque vos charges de travail et remet le montant des dépenses à zéro. Si vous dépassez votre plafond de dépenses et que vous souhaitez reprendre les opérations avant la réinitialisation mensuelle, ajustez ou supprimez manuellement 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 dépenses Google Cloud . 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 :
- Filtrez vos ressources par coût pour identifier les plus coûteuses.
- Comprendre quelle proportion des coûts est due à des configurations telles que les vCPU, les GPU, la mise en réseau, etc.
- Suivez l'impact des modifications apportées à la configuration de vos ressources sur votre facture mensuelle.
Google Cloud simulateur de coût
La présentation des tarifsGoogle Cloud contient des informations permettant de mieux comprendre le modèle de tarification Google Cloud . C'est également là que vous trouverez la liste détaillée des prix. 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 fournit des recommandations d'utilisation et des insights sur les produits Cloud.
L'outil de recommandation 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 un récapitulatif des données de coût, des données d'utilisation et des recommandations d'optimisation des coûts pour les services Google Cloud sur la page "Optimisation" de Cloud Hub.