Recommandations pour définir des garde-fous de dépense

S’applique à cette recommandation de liste de contrôle d’optimisation des coûts d’Azure Well-Architected Framework :

CO :04 Définissez des garde-fous de dépense. Les garde-fous doivent inclure les portes de mise en production, les stratégies de gouvernance, les limites de ressources et les contrôles d’accès. Hiérarchiser l’automatisation de la plateforme par rapport aux processus manuels.

Ce guide décrit les recommandations relatives à la définition des garde-fous de dépense. Les garde-fous de dépense sont des mesures de contrôle et de gestion des coûts dans un budget spécifié. Ils permettent d’éviter les dépenses inattendues ou excessives et de promouvoir l’utilisation rentable des ressources. Sans dépenser de garde-fous, vos coûts de charge de travail peuvent dépasser votre budget, ce qui entraîne des dépenses non planifiées qui peuvent affecter vos ressources financières.

Définitions

Terme Définition
Politiques de gouvernance Ensemble de règles qui appliquent la conformité et permettent l’audit des ressources de charge de travail.
Gouvernance Ensemble de stratégies, de processus et de contrôles qui permettent de garantir que la charge de travail est gérée efficacement, en toute sécurité et conformément aux exigences organisationnelles et réglementaires.
Infrastructure as code (IaC) Modèle descriptif pour la définition et le déploiement de l’infrastructure, y compris les réseaux, les machines virtuelles, les équilibreurs de charge et les topologies de connexion.
Portail de mise en production Condition ou point de contrôle dans un pipeline de mise en production qui doit être satisfait avant que le déploiement puisse continuer. Une porte de mise en production permet de s’assurer que des critères spécifiques sont respectés avant la publication du logiciel.

Stratégies de conception

Définissez des garde-fous de dépense en implémentant des mesures pour contrôler et gérer vos coûts dans un budget spécifié. Ces mesures incluent les stratégies de gouvernance, les contrôles d’accès, les portes de publication, les seuils budgétaires et les alertes. L’automatisation réduit le risque d’erreur humaine, améliore l’efficacité et aide à l’application cohérente des garde-fous de dépense. Hiérarchiser l’automatisation de la plateforme par rapport aux processus manuels. Les outils et services Automation que fournit la plateforme peuvent simplifier l’approvisionnement, la configuration et la gestion des ressources.

Utiliser des stratégies de gouvernance

Les stratégies de gouvernance peuvent servir de garde-fous de dépense sur différents aspects des ressources, tels que les types de ressources, les configurations, les étiquettes, l’emplacement et la gestion des données. De nombreuses plateformes cloud ont un service qui automatise l’application des stratégies de gouvernance. Utilisez des stratégies automatisées pour contrôler l’utilisation des ressources, appliquer la responsabilité et éliminer les dépenses sur les types de ressources restreints. Voici quelques-unes des stratégies que vous devez envisager d’appliquer :

  • Types de ressources restreints : les stratégies peuvent spécifier les types de ressources autorisés ou non autorisés au sein d’un organization. Par exemple, une organization peut avoir une stratégie qui limite l’utilisation de certains types de ressources coûteux pour contrôler les coûts.

  • Limites de ressources : définissez des limites de ressources pour contrôler les coûts et empêcher le surprovisionnement. Incluez des limites sur le nombre de ressources qui peuvent être approvisionnées, la taille des ressources et la durée d’utilisation des ressources dans votre stratégie. Ces limites peuvent vous aider à éviter des dépenses excessives et à optimiser l’utilisation des ressources. Par exemple, les limites de ressources peuvent réduire les effets d’une violation de compte non autorisée liée à l’exploration de chiffrement.

  • Configurations de ressources définies : les stratégies peuvent définir des configurations spécifiques pour les ressources. Vous pouvez appliquer des paramètres sur les ressources qui favorisent l’optimisation des coûts, comme la mise à l’échelle automatique et l’archivage des données

  • Emplacements restreints : vous pouvez utiliser des stratégies pour restreindre le déploiement de ressources dans des régions ou des emplacements spécifiques. Envisagez de restreindre les emplacements afin d’éviter les frais de transfert de données coûteux et de maintenir la conformité aux réglementations en matière de souveraineté des données.

  • Données managées : utilisez des stratégies pour appliquer des pratiques de gestion des données qui permettent d’optimiser les coûts. Par exemple, vous pouvez implémenter des stratégies qui nécessitent l’utilisation de niveaux de stockage à moindre coût pour les données moins fréquemment consultées ou des stratégies qui définissent des règles d’expiration pour la conservation des données.

  • Métadonnées appliquées : établissez des stratégies qui imposent l’utilisation de métadonnées spécifiques pour un meilleur suivi et une meilleure allocation des coûts. Vous pouvez également utiliser des métadonnées dans votre automatisation ou révision manuelle. Par exemple, utilisez des métadonnées pour automatiser les sauvegardes de ressources à l’aide d’une balise de sauvegarde. Une stratégie de métadonnées cohérente permet d’aligner les coûts sur les garde-fous des dépenses.

  • Ressources inactives limitées : utilisez des stratégies pour identifier les ressources inactives afin de pouvoir les supprimer ou les réutiliser. Envisagez de définir des stratégies qui arrêtent automatiquement les instances pendant les heures où elles ne sont pas utilisées.

Icône risqueRisque : si vous implémentez une mise à l’échelle automatique, définissez un seuil de mise à l’échelle maximal en fonction des tests. Les seuils maximums peuvent vous aider à éviter les pics de mise à l’échelle massifs qui entraînent des dépassements de coûts, mais un seuil défini trop bas peut affecter négativement les performances. Pour plus d’informations, consultez Recommandations pour l’optimisation des coûts de mise à l’échelle.

Configurer des contrôles d’accès

Configurez les contrôles d’accès pour définir des restrictions qui empêchent les dépenses excessives et pour vous assurer que seules les personnes autorisées peuvent consommer des ressources. Les contrôles d’accès peuvent aider à réduire le risque de modifications accidentelles ou inutiles qui affectent négativement l’optimisation des coûts. Pour implémenter des contrôles d’accès pour l’optimisation des coûts, procédez comme suit :

  1. Identifiez le contrôle nécessaire. Identifiez les ressources et services qui ont besoin de contrôles d’accès.

  2. Définissez des stratégies d’accès. Définissez des stratégies d’accès basées sur le principe de l’accès à moindre privilège, en accordant uniquement aux utilisateurs les autorisations nécessaires pour effectuer leurs tâches. Par exemple, certains utilisateurs peuvent avoir besoin uniquement d’un accès en lecture, tandis que d’autres peuvent également avoir besoin d’autorisations d’écriture ou de suppression.

  3. Implémentez l’authentification. Implémentez des méthodes d’authentification, comme le nom d’utilisateur/mot de passe, l’authentification multifacteur ou l’intégration avec des fournisseurs d’identité, pour vous assurer que seuls les utilisateurs autorisés peuvent accéder aux ressources.

  4. Utilisez le contrôle d’accès en fonction du rôle (RBAC). Configurez RBAC pour attribuer des rôles et des autorisations aux utilisateurs en fonction de leurs responsabilités de travail. L’utilisation de RBAC peut vous aider à gérer efficacement l’accès aux ressources.

  5. Passez en revue et mettez à jour les contrôles. Passez régulièrement en revue et mettez à jour les contrôles d’accès pour vous assurer qu’ils s’alignent sur les besoins changeants des organization. Supprimez les autorisations d’accès inutiles et ajustez les niveaux d’accès en fonction des besoins.

Utiliser des portes de mise en production

Les portes de mise en production sont des points de contrôle ou des conditions qui doivent être remplis avant qu’une mise en production ou un déploiement puisse se poursuivre. Utilisez des portes de mise en production pour vous assurer que la mise en production est rentable et qu’elle s’aligne sur les objectifs d’optimisation. Les portes de mise en production offrent une approche structurée de l’identification et de l’implémentation de mesures de réduction des coûts. Pour implémenter des portes de mise en production pour l’optimisation des coûts de charge de travail, procédez comme suit :

  1. Établissez des critères de mise en production. Établissez les conditions ou les critères qui doivent être remplis avant que les ressources ne soient publiées ou déployées. Incluez des facteurs tels que les limites de dépense, les seuils d’utilisation des ressources ou les jalons du projet.

  2. Incorporer des portes de mise en production. Incorporez les portes de mise en production dans le pipeline de déploiement. Vous pouvez utiliser des outils d’automatisation ou des scripts personnalisés pour vous assurer que les déploiements de ressources sont soumis aux critères définis.

  3. Surveiller les dépenses. Surveillez en permanence les dépenses et l’utilisation des ressources par rapport aux critères définis. Si le organization dépasse les seuils de dépense, les portes de mise en production doivent empêcher d’autres déploiements tant que le problème n’est pas résolu.

Configurer les alertes de coût

Il est important de définir des alertes pour les budgets, les anomalies de coût et l’utilisation des plans basés sur les engagements afin d’optimiser les coûts. Ces alertes fournissent une visibilité sur vos dépenses cloud et permettent une gestion proactive des coûts. Veillez à gérer les destinataires de notification pour les alertes et à maintenir la liste des destinataires à jour avec les responsabilités et l’accès actuels. Voici quelques alertes que vous pouvez créer pour optimiser les coûts :

  • Alertes budgétaires : définissez des alertes sur les budgets pour suivre vos dépenses par rapport à des seuils prédéfinis. Vous pouvez surveiller vos coûts et recevoir des notifications lorsque vous approchez ou dépassez le montant budgétisé en créant un budget mensuel, un compte de facturation ou un groupe de ressources. Les alertes budgétaires vous aident à rester informé de vos dépenses et à prendre des mesures préventives pour contrôler les coûts.

  • Alertes d’anomalie de coût : les alertes d’anomalie vous informent des variations de coûts inattendues qui peuvent indiquer des inefficacités ou des modèles de dépense anormaux. Vous pouvez configurer ces alertes pour identifier les anomalies dans les coûts réels ou prévus. Utilisez des alertes d’anomalie de coût pour examiner la cause sous-jacente d’une variation de coût et prendre des mesures correctives si nécessaire.

  • Alertes d’utilisation du plan basé sur les engagements : implémentez des alertes d’utilisation du plan basé sur l’engagement pour surveiller l’utilisation de votre plan. Si vous avez des plans basés sur les engagements, la définition d’alertes sur l’utilisation du plan peut vous aider à gérer et à optimiser efficacement la valeur de ces engagements. Vous pouvez configurer ces alertes pour avertir les parties prenantes si l’utilisation des ressources basées sur l’engagement descend en dessous d’un seuil souhaité. Optimisez vos ressources basées sur l’engagement et veillez à utiliser les avantages de vos engagements.

Utiliser IaC

Infrastructure as code est la pratique de la gestion et de l’approvisionnement des ressources d’infrastructure à l’aide de code, généralement sous la forme de fichiers de configuration. Implémentez cette stratégie pour définir et automatiser le déploiement et la configuration des ressources d’infrastructure, telles que les machines virtuelles, les réseaux et le stockage, à l’aide de modèles basés sur du code.

Les stratégies IaC fournissent une approche structurée et reproductible de la gestion et du contrôle des ressources d’infrastructure. IaC peut vous aider à déployer des ressources en fonction des besoins, à supprimer des ressources sans les exécuter en continu et à optimiser les coûts en vous assurant de déployer et de configurer des ressources selon des règles prédéfinies. Suivez ces étapes pour utiliser IaC pour l’optimisation des coûts :

  1. Créez des modèles IaC. Créez un langage de modèle basé sur le code pour définir vos ressources d’infrastructure et leurs configurations. Ces modèles vous permettent de spécifier l’état souhaité de vos ressources d’infrastructure de manière déclarative. Implémentez les meilleures pratiques pour l’optimisation des coûts dans votre code d’infrastructure. Envisagez de dimensionnement correct de vos ressources à l’aide d’instances réservées ou de plans d’économies. Utilisez des options de stockage rentables et appliquez des métadonnées de ressources pour l’allocation et le suivi des coûts.

  2. Modèles de magasin. Stockez les modèles IaC dans un système de contrôle de version pour suivre les modifications et gérer les différentes versions. Vous pouvez utiliser le contrôle de version pour conserver un historique de vos configurations d’infrastructure et favoriser la collaboration entre les membres de l’équipe.

  3. Utilisez des paramètres. Utilisez des paramètres dans vos modèles pour les rendre réutilisables et configurables. En utilisant des paramètres, vous pouvez facilement personnaliser vos déploiements d’infrastructure pour différents environnements ou scénarios.

  4. Utilisez des environnements éphémères. Utilisez des environnements éphémères à des fins de développement, de test et de préproduction afin d’optimiser les coûts. Les environnements éphémères ne doivent être exécutés que si nécessaire. Créez ces environnements à l’aide des outils IaC et supprimez l’environnement lorsque vous avez terminé.

  5. Utilisez les outils IaC. Utilisez des outils et des frameworks IaC pour automatiser le déploiement et la configuration de vos ressources d’infrastructure. Utilisez l’automatisation pour déployer des ressources de manière cohérente et fiable en fonction de vos stratégies définies.

  6. Surveiller les ressources déployées. Surveillez régulièrement vos ressources et leurs coûts pour garantir la conformité à vos stratégies de dépense. Utilisez des outils de surveillance et d’alerte pour identifier les écarts par rapport aux garde-fous définis et prendre les mesures correctives nécessaires. Recherchez les ressources inutilisées et supprimez-les, de préférence avec l’automatisation.

Facilitation Azure

Utilisation de stratégies de gouvernance : utilisez Azure Policy pour définir et appliquer des stratégies de gouvernance qui s’alignent sur vos objectifs d’optimisation des coûts. Vous pouvez utiliser Azure Policy pour définir des règles sur les groupes d’administration, les abonnements et les groupes de ressources. Ces stratégies peuvent réglementer l’approvisionnement des ressources, les limites d’utilisation et l’allocation des coûts. Utilisez des stratégies pour promouvoir la gestion des droits des ressources, identifier et éliminer les ressources inactives ou sous-utilisées, et encourager l’utilisation de services et d’architectures rentables.

Azure vous permet de définir des limites ou des quotas pour éviter des coûts inattendus. Vous pouvez définir des limites sur le nombre de ressources qui peuvent être approvisionnées, en plus de la taille et de la durée de l’utilisation des ressources. Définissez ces limites pour éviter le surprovisionnement et contrôler les coûts.

  • Identifiez les ressources sous-utilisées ou inactives. Utilisez Azure Advisor pour optimiser et réduire vos coûts Azure globaux en identifiant les ressources inactives et sous-utilisées. Recevez des recommandations de coûts à partir de la section coût du tableau de bord advisor .

  • Ajouter des métadonnées de ressource. Utilisez la gouvernance Azure pour implémenter l’étiquetage et la catégorisation des ressources. Balisez les ressources à l’aide de métadonnées pertinentes pour suivre et allouer des coûts à différents services, projets ou centres de coûts. La visibilité sur l’attribution des coûts peut vous aider à identifier les zones de dépenses élevées, à optimiser l’allocation des ressources et à faciliter une meilleure gestion des coûts.

Configuration des contrôles d’accès : utilisez Azure RBAC pour gérer l’accès aux ressources. Vous pouvez utiliser RBAC pour accorder des autorisations à des utilisateurs, des groupes ou des applications en fonction de leurs rôles. Implémentez RBAC pour garantir que seuls les utilisateurs autorisés ont accès aux ressources, ce qui réduit le risque d’utilisation non autorisée des ressources et les implications potentielles sur les coûts.

Utilisation de portes de mise en production : utilisez la gestion des mises en production Azure Pipelines pour définir et appliquer vos portes de mise en production. Vous pouvez configurer des points de contrôle manuels ou automatisés pour vous assurer que vous répondez à des critères spécifiques, tels que les vérifications de sécurité, les exigences de conformité et les seuils de coût.

Utilisation de l’infrastructure en tant que code. Vous pouvez utiliser les outils et services Azure pour déployer et gérer des ressources d’infrastructure à l’aide de code. En utilisant des outils tels que les modèles Azure Resource Manager (ARM), Azure Bicep et Azure DevOps, vous pouvez définir et déployer vos ressources d’infrastructure de manière déclarative. Azure propose des modèles Bicep, Azure Resource Manager et Terraform pour chaque ressource Azure.

Utilisez Azure Pipelines ou d’autres outils d’intégration continue et de livraison continue (CI/CD) pour automatiser les processus de génération, de test et de déploiement. Teams peut utiliser des pipelines pour définir une série d’étapes et d’actions qui s’exécutent automatiquement chaque fois que des modifications sont apportées au codebase. Automatisez ces processus pour réduire les efforts manuels, garantir la cohérence et accélérer la livraison de logiciels.

Envisagez d’utiliser des ressources à moindre coût pour vos environnements éphémères ou hors production afin d’optimiser les coûts. Azure fournit différents niveaux tarifaires pour les ressources. Azure DevTest Labs prix et les réservations Azure sont des méthodes économiques que vous pouvez explorer pour les environnements éphémères.

Les dépôts Git, tels que Azure Repos et GitHub, fournissent des fonctionnalités de contrôle de version pour la gestion des configurations de code et d’infrastructure. Teams et les développeurs peuvent utiliser des référentiels automatisés pour collaborer, suivre les modifications et gérer un historique de leur codebase.

Les environnements de déploiement Azure permettent aux équipes de développement de créer rapidement et facilement une infrastructure d’application à l’aide de modèles basés sur des projets qui établissent la cohérence et les meilleures pratiques tout en optimisant la sécurité. L’accès à la demande aux environnements sécurisés accélère les étapes du cycle de vie du développement logiciel de manière conforme et économique.

Le Azure Developer CLI est un outil open source qui accélère le temps nécessaire à l’obtention de votre application d’un environnement de développement local vers Azure. Le Azure Developer CLI propose des commandes adaptées aux développeurs qui correspondent aux étapes clés de votre flux de travail, que vous travailliez dans le terminal, un environnement de développement intégré (IDE) ou CI/CD.

Configuration des alertes de coût : utilisez Microsoft Cost Management pour optimiser les coûts et appliquer des garde-fous de dépense. Vous pouvez utiliser les fonctionnalités de gestion des coûts pour définir des budgets et des alertes, visualiser les informations sur les coûts à l’aide d’outils tels que Power BI et analyser les modèles de coûts et les goulots d’étranglement des performances.

Alignement organisationnel

Les équipes centrales doivent utiliser les conseils Cloud Adoption Framework pour configurer des garde-fous de dépense dans l’organization afin que les équipes de charge de travail comprennent ce que l’équipe centrale peut offrir.

Pour plus d’informations, consultez Processus de conformité aux stratégies Cost Management et Développer des instructions de stratégie de gouvernance des coûts. Nous encourageons les organization à adopter des garde-fous pilotés par des politiques pour la mise en œuvre.

Liste de contrôle d’optimisation des coûts

Reportez-vous à l’ensemble complet de recommandations.