Identifier et éliminer le gaspillage
Utilisez les recommandations d’Azure Cost Management et d’Advisor pour trouver les VM inactives, les disques non attachés, les services surdimensionnés et les ressources zombies, puis mettez-les hors service.
Identifier et éliminer le gaspillage est une leçon Azure Fundamentals gratuite sur CoddyKit. Ceci est la leçon 1 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Azure Fundamentals, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Azure Fundamentals comprend 4 leçons au total.
Gaspillage du cloud : le facteur de coût caché
Les études montrent régulièrement que les organisations gaspillent 25 à 35 % de leurs dépenses cloud dans des ressources inactives, surdimensionnées ou oubliées. Dans Azure, les principales sources de gaspillage comprennent les VM exécutées jour et nuit avec une utilisation du CPU presque nulle, les disques managés non attachés restants après la suppression d'une VM, les adresses IP publiques orphelines et les plans App Service inutilisés. Identifier et éliminer ce gaspillage constitue la première étape, et celle offrant le meilleur retour sur investissement, de toute pratique FinOps.
Recommandations de coûts d'Azure Advisor
Azure Advisor analyse en continu l'utilisation de vos ressources et génère automatiquement des recommandations de type Cost. Parmi les recommandations courantes figurent le redimensionnement ou l'arrêt des VM sous-utilisées (moins de 5 % d'utilisation du CPU ou 2 % de la mémoire pendant 7 jours), l'achat d'instances réservées pour les VM exécutées en permanence, la suppression des adresses IP publiques non attachées et la suppression des instances Application Gateway inactives. Chaque recommandation indique les économies mensuelles estimées, afin que vous puissiez les hiérarchiser selon leur impact.
# List Advisor cost recommendations via CLI
az advisor recommendation list \
--category Cost \
--query '[].{Resource:resourceName, Impact:impact, Savings:extendedProperties.annualSavingsAmount}' \
--output tableRecherche des VM inactives et sous-utilisées
Azure Monitor collecte les métriques de pourcentage de CPU et de trafic réseau entrant et sortant pour chaque VM. Une VM dont l'utilisation du CPU reste inférieure à 5 % est une excellente candidate au redimensionnement ou à l'arrêt. Utilisez la fonctionnalité Virtual Machine Insights d'Azure Monitor pour obtenir une vue de l'utilisation du CPU et de la mémoire de l'ensemble de votre parc sur 24 heures, 7 jours ou 30 jours. La recommandation d'Advisor concernant les VM sous-utilisées renvoie directement aux graphiques de performances, afin que vous puissiez confirmer cette tendance avant d'agir.
# Query average CPU for a VM over the last 7 days
az monitor metrics list \
--resource /subscriptions/<sub>/resourceGroups/myRG/providers/Microsoft.Compute/virtualMachines/myVM \
--metric 'Percentage CPU' \
--interval PT1H \
--start-time 2024-06-01T00:00:00Z \
--end-time 2024-06-08T00:00:00Z \
--aggregation AverageDisques et instantanés non attachés
Lorsqu'une VM est supprimée sans que vous choisissiez de supprimer ses disques, les disques managés restent présents et continuent d'engendrer des frais. Dans le portail Azure, filtrez les disques selon Disk state: Unattached pour trouver ces disques orphelins. De même, les anciens instantanés créés à des fins de sauvegarde ou de migration sont souvent oubliés. Le stockage des instantanés est moins cher que celui des disques managés, mais une année d'instantanés oubliés dans un abonnement de grande taille peut représenter plusieurs milliers de dollars par an.
# Find all unattached managed disks in a subscription
az disk list \
--query '[?diskState == `Unattached`].{Name:name, RG:resourceGroup, SizeGB:diskSizeGb}' \
--output tableAdresses IP publiques et cartes réseau orphelines
Les adresses IP publiques dans Azure sont facturées même lorsqu'elles ne sont pas associées à une ressource en cours d'exécution. Lorsque des VM ou des équilibreurs de charge sont supprimés, leurs IP publiques et leurs interfaces réseau peuvent rester présentes. Dans le portail, filtrez les adresses IP publiques selon Associated to: None et supprimez celles dont vous n'avez plus besoin. De même, les interfaces réseau orphelines qui ne sont attachées à aucune VM ni à aucun service peuvent être supprimées sans risque. Ces frais sont faibles individuellement, mais ils s'accumulent sur des centaines de ressources.
# Find unassociated public IP addresses
az network public-ip list \
--query '[?ipConfiguration == null].{Name:name, RG:resourceGroup, SKU:sku.name}' \
--output tableRessources zombies : environnements de préproduction et de développement
Les ressources zombies sont des environnements de préproduction, de test ou de preuve de concept qui ont été provisionnés puis oubliés. Contrairement aux VM de production inactives, elles peuvent être modérément utilisées pendant les heures ouvrées, mais ne servent aucun projet actif. Mettez en place une stratégie d'étiquetage des ressources qui exige les étiquettes Environment et Project sur chaque ressource, puis planifiez des alertes automatiques pour les ressources dont Environment=Dev ou Environment=Test et qui ont plus de 90 jours.
# Find resources tagged as Dev that are over 90 days old (approximate via createdTime)
az resource list \
--tag Environment=Dev \
--query '[].{Name:name, Type:type, RG:resourceGroup}' \
--output tableArrêt automatique des VM de développement et de test
Les VM Azure prennent en charge la fonctionnalité Auto-Shutdown, qui arrête automatiquement une VM à une heure configurée chaque jour. Activez-la sur toutes les VM de développement et de test afin qu'elles ne fonctionnent pas pendant la nuit ni le week-end. Par exemple, une VM de développement exécutée 24 h/24 et 7 j/7 coûte comme 24 heures, tandis qu'une VM configurée pour s'arrêter automatiquement à 18 h et démarrer automatiquement à 8 h uniquement les jours ouvrés n'est utilisée que 50 heures par semaine au lieu de 168, ce qui permet d'économiser environ 70 % des coûts de calcul.
# Enable auto-shutdown at 18:00 UTC on a dev VM
az vm auto-shutdown \
--resource-group myRG \
--name myDevVM \
--time 1800 \
--email admin@contoso.comAzure Cost Management : détection des anomalies
Azure Cost Management inclut une fonctionnalité Anomaly Detection qui utilise l'apprentissage automatique pour identifier les hausses de dépenses inattendues. Lorsque le coût d'un abonnement ou d'un groupe de ressources s'écarte fortement des tendances prévues — par exemple si quelqu'un déploie accidentellement une VM GPU ou oublie de supprimer une passerelle ExpressRoute — Cost Management envoie une alerte d'anomalie par e-mail. La configuration d'alertes d'anomalie est une mesure rapide et efficace pour détecter les coûts incontrôlés avant leur apparition sur la facture mensuelle.
# Create a cost anomaly alert
az costmanagement alert create \
--name 'AnomalyAlert' \
--scope '/subscriptions/<subscriptionId>' \
--type 'Anomaly' \
--contact-emails 'finance@contoso.com'Redimensionnement des niveaux de stockage et de base de données
Tout le gaspillage n'est pas lié au calcul. Les bases de données Azure SQL provisionnées sur le niveau Business Critical mais exécutant de simples requêtes principalement en lecture peuvent offrir des performances identiques sur le niveau General Purpose, pour moitié moins cher. Les données de Blob Storage rarement consultées doivent être déplacées du niveau Hot vers le niveau Cool ou Archive à l'aide de stratégies de gestion du cycle de vie. Azure Advisor présente les recommandations de redimensionnement des bases de données et du stockage au même titre que celles concernant le calcul.
# Create a Blob lifecycle policy to move data to Cool tier after 30 days
az storage account management-policy create \
--account-name mystorageacct \
--resource-group myRG \
--policy @- << 'POLICY'
{
'rules': [{
'name': 'MoveOldDataToCool',
'type': 'Lifecycle',
'definition': {
'actions': { 'baseBlob': { 'tierToCool': { 'daysAfterModificationGreaterThan': 30 } } },
'filters': { 'blobTypes': ['blockBlob'] }
}
}]
}
POLICYCréation d'un carnet de tâches pour éliminer le gaspillage
Considérez l'optimisation des coûts comme une pratique d'ingénierie continue, et non comme une action ponctuelle. Créez un carnet de tâches FinOps dans Azure DevOps ou Jira, alimenté chaque semaine par les recommandations d'Advisor et les alertes d'anomalie de coûts. Attribuez chaque tâche de réduction du gaspillage à l'équipe responsable et définissez une date cible de résolution. Comparez les économies réalisées aux économies identifiées afin de mesurer la maturité FinOps. Planifiez une revue mensuelle des coûts avec les responsables techniques et les équipes financières pour maintenir l'élimination du gaspillage au cœur des priorités de l'organisation.
Gouvernance pour prévenir le gaspillage futur
La prévention est plus rentable que la remédiation. Utilisez Azure Policy pour refuser la création de SKU de VM coûteux (tels que GPU ou M-series) sans approbation, exiger les étiquettes Environment et ExpiryDate sur toutes les ressources et activer automatiquement l'arrêt automatique des VM nouvellement créées dans les abonnements de développement. Combinez ces stratégies avec des alertes de budget définies à 80 % et 100 % de l'allocation mensuelle, afin que les équipes soient informées avant tout dépassement.
Vérification rapide
Vérifiez votre compréhension des concepts de Microsoft Azure Fundamentals (AZ-900) présentés dans cette leçon.
Récapitulatif de la leçon
Dans cette leçon, vous avez appris qu'Azure Advisor présente des recommandations de coûts exploitables pour les VM inactives, les disques non attachés et les services surdimensionnés, que l'arrêt automatique des VM de développement peut réduire les dépenses de calcul de 70 % et que les stratégies de gouvernance avec étiquetage empêchent l'accumulation de gaspillage. Nous allons maintenant examiner les techniques de redimensionnement et les stratégies de mise à l'échelle automatique.
Questions Fréquemment Posées
La leçon « Identifier et éliminer le gaspillage » est-elle gratuite ?
Oui — le texte complet de « Identifier et éliminer le gaspillage » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Azure Fundamentals, passe à CoddyKit PRO. Le cours Azure Fundamentals comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Identifier et éliminer le gaspillage » ?
Utilisez les recommandations d’Azure Cost Management et d’Advisor pour trouver les VM inactives, les disques non attachés, les services surdimensionnés et les ressources zombies, puis mettez-les hors… Tu pratiques Azure Fundamentals avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer Azure Fundamentals ?
Aucune expérience préalable n'est requise. Azure Fundamentals sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 1 sur 4.
Combien de temps prend la leçon « Identifier et éliminer le gaspillage » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon Azure Fundamentals ?
Oui. Chaque leçon Azure Fundamentals inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Identifier et éliminer le gaspillage
- Dimensionnement adapté et mise à l’échelle automatique
- Plans d’épargne et réservations Azure
- FinOps et modèles de refacturation