Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
Last reviewed 2024-09-25 UTC
Ce principe du pilier d'optimisation des coûts du Google Cloud framework Well-Architected fournit des recommandations pour vous aider à optimiser les coûts de vos déploiements cloud en fonction des objectifs commerciaux en constante évolution.
À mesure que votre entreprise se développe et évolue, vos charges de travail cloud doivent s'adapter aux changements des exigences en termes de ressources et des modèles d'utilisation. Pour tirer le meilleur parti de vos dépenses cloud, vous devez maintenir votre rentabilité tout en continuant à soutenir vos objectifs commerciaux. Cela nécessite une approche proactive et adaptative axée sur l'amélioration et l'optimisation continues.
Présentation des principes
Pour optimiser les coûts en permanence, vous devez surveiller et analyser de manière proactive votre environnement cloud, et effectuer les ajustements appropriés pour répondre aux exigences actuelles.
Concentrez vos efforts de surveillance sur les indicateurs clés de performance (KPI) qui affectent directement l'expérience de vos utilisateurs finaux, s'alignent sur vos objectifs commerciaux et fournissent des insights pour une amélioration continue. Cette approche vous permet d'identifier et de résoudre les inefficacités, de vous adapter aux besoins en constante évolution et d'aligner en permanence les dépenses cloud sur les objectifs stratégiques de l'entreprise. Pour équilibrer l'observabilité complète et l'efficacité des coûts, comprenez les coûts et les avantages de la surveillance de l'utilisation des ressources, et utilisez des stratégies d'amélioration et d'optimisation des processus appropriées.
Recommandations
Pour surveiller efficacement votre environnement Google Cloud et optimiser les coûts en permanence, tenez compte des recommandations suivantes.
Se concentrer sur les métriques pertinentes pour l'entreprise
Une surveillance efficace commence par identifier les métriques les plus importantes pour votre entreprise et vos clients. Voici quelques exemples de métriques:
Métriques sur l'expérience utilisateur: les métriques de latence, de taux d'erreur, de débit et de satisfaction client sont utiles pour comprendre l'expérience des utilisateurs finaux lorsqu'ils utilisent vos applications.
Métriques de résultats commerciaux: les revenus, la croissance du nombre de clients et l'engagement peuvent être corrélés à l'utilisation des ressources pour identifier les possibilités d'optimisation des coûts.
Métriques DevOps Research and Assessment (DORA): des métriques telles que la fréquence de déploiement, le délai de livraison des modifications, le taux d'échec des modifications et le délai de restauration fournissent des insights sur l'efficacité et la fiabilité de votre processus de livraison de logiciels. En améliorant ces métriques, vous pouvez augmenter la productivité, réduire les temps d'arrêt et optimiser les coûts.
Métriques SRE (Site Reliability Engineering): les budgets d'erreur aident les équipes à quantifier et à gérer le niveau acceptable de perturbation du service. En définissant des attentes claires en termes de fiabilité, les budgets d'erreur permettent aux équipes d'innover et de déployer des modifications plus sereinement, en connaissant leur marge de sécurité. Cette approche proactive favorise un équilibre entre l'innovation et la stabilité, ce qui permet d'éviter les coûts opérationnels excessifs associés aux pannes majeures ou aux temps d'arrêt prolongés.
Utiliser l'observabilité pour optimiser les ressources
Vous trouverez ci-dessous des recommandations pour utiliser l'observabilité afin d'identifier les goulots d'étranglement des ressources et les ressources sous-utilisées dans vos déploiements cloud:
Surveiller l'utilisation des ressources: utilisez les métriques d'utilisation des ressources pour identifier les ressourcesGoogle Cloud sous-utilisées. Par exemple, utilisez des métriques telles que l'utilisation du processeur et de la mémoire pour identifier les ressources de VM inutilisées.
Pour Google Kubernetes Engine (GKE), vous pouvez afficher une répartition détaillée des coûts et des métriques d'optimisation liées aux coûts.
Pour Google Cloud VMware Engine, examinez l'utilisation des ressources afin d'optimiser les modifications de données, la consommation de stockage et le dimensionnement d'ESXi.
Utiliser les recommandations cloud: Active Assist est un portefeuille d'outils intelligents qui vous aide à optimiser vos opérations cloud. Ces outils fournissent des recommandations pratiques pour réduire les coûts, améliorer les performances, renforcer la sécurité et même prendre des décisions axées sur la durabilité. Par exemple, les insights sur le dimensionnement des VM peuvent vous aider à optimiser l'allocation des ressources et à éviter les dépenses inutiles.
Corrélation entre l'utilisation des ressources et les performances: analysez la relation entre l'utilisation des ressources et les performances de l'application pour déterminer si vous pouvez passer à des ressources moins chères sans affecter l'expérience utilisateur.
Trouvez l'équilibre entre les besoins de dépannage et les coûts.
Les données d'observabilité détaillées peuvent vous aider à diagnostiquer et à résoudre les problèmes.
Toutefois, le stockage d'un volume excessif de données d'observabilité ou l'exportation de données inutiles vers des outils de surveillance externes peut entraîner des coûts inutiles. Pour un dépannage efficace, tenez compte des recommandations suivantes:
Collectez suffisamment de données pour le dépannage: assurez-vous que votre solution de surveillance collecte suffisamment de données pour diagnostiquer et résoudre efficacement les problèmes lorsqu'ils surviennent. Ces données peuvent inclure des journaux, des traces et des métriques à différents niveaux de précision.
Utilisez l'échantillonnage et l'agrégation: équilibrez le besoin de données détaillées avec les considérations de coût à l'aide de techniques d'échantillonnage et d'agrégation. Cette approche vous permet de collecter des données représentatives sans générer de coûts de stockage excessifs.
Comprendre les modèles de tarification de vos outils et services de surveillance: évaluez différentes solutions de surveillance et choisissez les options qui correspondent aux besoins, au budget et aux habitudes d'utilisation spécifiques de votre projet. Tenez compte de facteurs tels que le volume de données, les exigences de conservation et les fonctionnalités requises lorsque vous effectuez votre sélection.
Révisez régulièrement la configuration de votre surveillance: évitez de collecter des données excessives en supprimant les métriques ou les journaux inutiles.
Adapter la collecte des données aux rôles et définir des règles de conservation spécifiques aux rôles
Tenez compte des besoins spécifiques en données des différents rôles. Par exemple, les développeurs peuvent avoir besoin d'accéder principalement aux traces et aux journaux au niveau de l'application, tandis que les administrateurs informatiques peuvent se concentrer sur les journaux système et les métriques d'infrastructure. En personnalisant la collecte des données, vous pouvez réduire les coûts de stockage inutiles et éviter d'inonder les utilisateurs d'informations non pertinentes.
En outre, vous pouvez définir des règles de conservation en fonction des besoins de chaque rôle et des exigences réglementaires. Par exemple, les développeurs peuvent avoir besoin d'accéder à des journaux détaillés sur une période plus courte, tandis que les analystes financiers peuvent avoir besoin de données à plus long terme.
Tenir compte des exigences réglementaires et de conformité
Dans certains secteurs, les exigences réglementaires imposent la conservation des données. Pour éviter les risques juridiques et financiers, vous devez vous assurer que vos pratiques de surveillance et de conservation des données vous aident à respecter les réglementations applicables. En même temps, vous devez maintenir la rentabilité. Tenez compte des recommandations suivantes:
Déterminez les exigences spécifiques de conservation des données pour votre secteur ou votre région, et assurez-vous que votre stratégie de surveillance répond à ces exigences.
Implémentez des mécanismes d'archivage et de récupération de données appropriés pour répondre aux besoins d'audit et de conformité, tout en minimisant les coûts de stockage.
Implémenter des alertes intelligentes
Les alertes permettent de détecter et de résoudre les problèmes dans les meilleurs délais. Toutefois, un équilibre est nécessaire entre une approche qui vous tient informé et une autre qui vous submerge de notifications. En concevant des systèmes d'alerte intelligents, vous pouvez hiérarchiser les problèmes critiques qui ont un impact plus important sur l'activité. Tenez compte des recommandations suivantes:
Priorisez les problèmes qui affectent les clients: concevez des alertes qui se déclenchent rapidement pour les problèmes qui affectent directement l'expérience client, comme les pannes de site Web, les temps de réponse lents ou les échecs de transaction.
Configurez votre système pour les problèmes temporaires: utilisez des seuils et des mécanismes de retard appropriés pour éviter les alertes inutiles en cas de problèmes temporaires ou de problèmes de système auto-réparables qui n'affectent pas les clients.
Personnaliser la gravité des alertes: assurez-vous que les problèmes les plus urgents reçoivent une attention immédiate en différenciant les alertes critiques des alertes non critiques.
Utilisez judicieusement les canaux de notification: choisissez les canaux appropriés pour les notifications d'alerte (e-mail, SMS ou bipeur) en fonction de la gravité et de l'urgence des alertes.
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2024/09/25 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Difficile à comprendre","hardToUnderstand","thumb-down"],["Informations ou exemple de code incorrects","incorrectInformationOrSampleCode","thumb-down"],["Il n'y a pas l'information/les exemples dont j'ai besoin","missingTheInformationSamplesINeed","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 2024/09/25 (UTC)."],[[["\u003cp\u003eContinuously monitoring and analyzing your cloud environment is essential for optimizing costs and adapting to changing business needs, which includes focusing on key performance indicators that impact end-users and align with business goals.\u003c/p\u003e\n"],["\u003cp\u003eObservability tools are critical for identifying underutilized resources and bottlenecks, utilizing resources like Active Assist to receive actionable recommendations for reducing costs, improving performance, and increasing sustainability.\u003c/p\u003e\n"],["\u003cp\u003eBalancing detailed data collection for troubleshooting with cost considerations requires using sampling and aggregation techniques, and regularly reviewing monitoring configurations to avoid excessive data storage.\u003c/p\u003e\n"],["\u003cp\u003eTailoring data collection to specific roles, such as developers and IT administrators, and defining role-specific data retention policies can reduce unnecessary storage costs and improve data relevance.\u003c/p\u003e\n"],["\u003cp\u003eImplementing smart alerting that prioritizes issues affecting customers, tunes for temporary problems, and uses notification channels effectively helps to ensure timely issue resolution without overwhelming teams.\u003c/p\u003e\n"]]],[],null,["# Optimize continuously\n\nThis principle in the cost optimization pillar of the [Google Cloud Well-Architected Framework](/architecture/framework)\nprovides recommendations to help you optimize the cost of your cloud deployments\nbased on constantly changing and evolving business goals.\n\nAs your business grows and evolves, your cloud workloads need to adapt to changes\nin resource requirements and usage patterns. To derive maximum value from your\ncloud spending, you must maintain cost-efficiency while continuing to support\nbusiness objectives. This requires a proactive and adaptive approach that focuses\non continuous improvement and optimization.\n\nPrinciple overview\n------------------\n\nTo optimize cost continuously, you must proactively monitor and analyze your\ncloud environment and make suitable adjustments to meet current requirements.\nFocus your monitoring efforts on key performance indicators (KPIs) that directly\naffect your end users' experience, align with your business goals, and provide\ninsights for continuous improvement. This approach lets you identify and address\ninefficiencies, adapt to changing needs, and continuously align cloud spending\nwith strategic business goals. To balance comprehensive observability with cost\neffectiveness, understand the costs and benefits of monitoring resource usage\nand use appropriate process-improvement and optimization strategies.\n\nRecommendations\n---------------\n\nTo effectively monitor your Google Cloud environment and optimize cost\ncontinuously, consider the following recommendations.\n\n### Focus on business-relevant metrics\n\nEffective monitoring starts with identifying the metrics that are most important\nfor your business and customers. These metrics include the following:\n\n- **User experience metrics**: Latency, error rates, throughput, and customer satisfaction metrics are useful for understanding your end users' experience when using your applications.\n- **Business outcome metrics**: Revenue, customer growth, and engagement can be correlated with resource usage to identify opportunities for cost optimization.\n- **[DevOps Research \\& Assessment (DORA)](https://dora.dev) metrics**: Metrics like deployment frequency, lead time for changes, change failure rate, and time to restore provide insights into the efficiency and reliability of your software delivery process. By improving these metrics, you can increase productivity, reduce downtime, and optimize cost.\n- **[Site Reliability Engineering (SRE)](https://sre.google) metrics**: Error budgets help teams to quantify and manage the acceptable level of service disruption. By establishing clear expectations for reliability, error budgets empower teams to innovate and deploy changes more confidently, knowing their safety margin. This proactive approach promotes a balance between innovation and stability, helping prevent excessive operational costs associated with major outages or prolonged downtime.\n\n### Use observability for resource optimization\n\nThe following are recommendations to use observability to identify resource\nbottlenecks and underutilized resources in your cloud deployments:\n\n- **Monitor resource utilization** : Use resource utilization metrics to identify Google Cloud resources that are underutilized. For example, use metrics like CPU and memory utilization to identify [idle VM resources](/monitoring/agent/process-metrics#view_performance_metrics_for_top_resource-consuming_vms). For Google Kubernetes Engine (GKE), you can view a detailed [breakdown of costs](/kubernetes-engine/docs/how-to/cost-allocations) and [cost-related optimization metrics](/kubernetes-engine/docs/how-to/cost-optimization-metrics). For Google Cloud VMware Engine, [review resource utilization](https://cloud.google.com/blog/topics/cost-management/cost-optimization-of-google-cloud-vmware-engine-deployments) to optimize CUDs, storage consumption, and ESXi right-sizing.\n- **Use cloud recommendations** : [Active Assist](/solutions/active-assist) is a portfolio of intelligent tools that help you optimize your cloud operations. These tools provide actionable recommendations to reduce costs, increase performance, improve security and even make sustainability-focused decisions. For example, [VM rightsizing insights](/compute/docs/instance-groups/apply-machine-type-recommendations-managed-instance-groups) can help to optimize resource allocation and avoid unnecessary spending.\n- **Correlate resource utilization with performance**: Analyze the relationship between resource utilization and application performance to determine whether you can downgrade to less expensive resources without affecting the user experience.\n\n### Balance troubleshooting needs with cost\n\nDetailed observability data can help with diagnosing and troubleshooting issues.\nHowever, storing excessive amounts of observability data or exporting unnecessary\ndata to external monitoring tools can lead to unnecessary costs. For efficient\ntroubleshooting, consider the following recommendations:\n\n- **Collect sufficient data for troubleshooting**: Ensure that your monitoring solution captures enough data to efficiently diagnose and resolve issues when they arise. This data might include logs, traces, and metrics at various levels of granularity.\n- **Use sampling and aggregation**: Balance the need for detailed data with cost considerations by using sampling and aggregation techniques. This approach lets you collect representative data without incurring excessive storage costs.\n- **Understand the pricing models of your monitoring tools and services**: Evaluate different monitoring solutions and choose options that align with your project's specific needs, budget, and usage patterns. Consider factors like data volume, retention requirements, and the required features when making your selection.\n- **Regularly review your monitoring configuration**: Avoid collecting excessive data by removing unnecessary metrics or logs.\n\n### Tailor data collection to roles and set role-specific retention policies\n\nConsider the specific data needs of different roles. For example, developers\nmight primarily need access to traces and application-level logs, whereas IT\nadministrators might focus on system logs and infrastructure metrics. By tailoring\ndata collection, you can reduce unnecessary storage costs and avoid overwhelming\nusers with irrelevant information.\n\nAdditionally, you can define retention policies based on the needs of each role\nand any regulatory requirements. For example, developers might need access to\ndetailed logs for a shorter period, while financial analysts might require\nlonger-term data.\n\n### Consider regulatory and compliance requirements\n\nIn certain industries, regulatory requirements mandate data retention. To avoid\nlegal and financial risks, you need to ensure that your monitoring and data\nretention practices help you adhere to relevant regulations. At the same time,\nyou need to maintain cost efficiency. Consider the following recommendations:\n\n- Determine the specific data retention requirements for your industry or region, and ensure that your monitoring strategy meets the requirements of those requirements.\n- Implement appropriate data archival and retrieval mechanisms to meet audit and compliance needs while minimizing storage costs.\n\n### Implement smart alerting\n\nAlerting helps to detect and resolve issues in a timely manner. However, a\nbalance is necessary between an approach that keeps you informed, and one that\noverwhelms you with notifications. By designing intelligent alerting systems,\nyou can prioritize critical issues that have higher business impact. Consider\nthe following recommendations:\n\n- **Prioritize issues that affect customers**: Design alerts that trigger rapidly for issues that directly affect the customer experience, like website outages, slow response times, or transaction failures.\n- **Tune for temporary problems**: Use appropriate thresholds and delay mechanisms to avoid unnecessary alerts for temporary problems or self-healing system issues that don't affect customers.\n- **Customize alert severity**: Ensure that the most urgent issues receive immediate attention by differentiating between critical and noncritical alerts.\n- **Use notification channels wisely**: Choose appropriate channels for alert notifications (email, SMS, or paging) based on the severity and urgency of the alerts."]]