Guide FinOps complet pour contrôler et optimiser vos dépenses Google Cloud. Bonnes pratiques, outils et stratégies d'économie concrets.
Votre facture Google Cloud a dépassé le budget de 45 % au dernier trimestre. L'équipe finance vous demande des explications. Le directeur technique veut comprendre pourquoi les VMs tournent à vide le weekend. Cette situation, je l'ai vécue chez un client industriel du CAC 40 il y a trois ans : 2,3 millions d'euros de gaspillage annuel, dont 60 % aurait pu être évité avec une approche FinOps structurée.
Les entreprises qui implémentent une démarche FinOps sur GCP réduisent leurs dépenses cloud de 20 à 40 % en moyenne, selon les données comparatives que j'ai наблюдал sur une vingtaine de projets de migration. Ce guide pratique vous donne les méthodes, les outils et les configurations concrètes pour reprendre le contrôle de votre facture Google Cloud.
Pour maîtriser vos coûts GCP, structurez votre approche en trois piliers : visibilité (Cost Explorer, budgets, labels), optimisation (CUDs, rightsizing, Spot VMs) et gouvernance (politiques, alertes, automation). Commencez par activer le monitoring granulaire avec des labels cohérents, configurez des budgets avec alertes Slack/email, puis négociez des engagements sur vos ressources prévisibles (Compute Engine CUDs). L'objectif : éliminer le gaspillage avant de négocier des remises.
Comprendre l'architecture de facturation Google Cloud
Avant d'optimiser, vous devez comprendre comment GCP vous facture. Google Cloud Structure ses coûts en quatre couches principales : les ressources facturées à l'usage (Compute Engine, BigQuery, Cloud Storage), les frais de support (de 29 $/mois à 100 000 $+ pour le support Premium), les remises conditionnelles (Sustained Use Discounts appliquées automatiquement), et les engagements régionaux ou convertibles (Committed Use Discounts négociés).
Les composants de votre facture GCP
- Compute Engine représente souvent 40 à 60 % de la facture totale pour des workloads classiques
- BigQuery facturé au scan de données (1 To扫瞄 = 5 $ en tarif on-demand)
- Cloud Storage avec 6 classes de stockage (Standard, Nearline, Coldline, Archive, Dynamic Storage, Intelligent Storage)
- GKE facturé uniquement sur les nœuds provisionnés (pas de frais de management Kubernetes)
La première erreur que je vois systématiquement : les entreprises ne lient pas leur compte de facturation à un projet organisation avec une structure de folders logique. Résultat : impossibilité de répartir les coûts par BU, environnement (prod/dev/staging), ou équipe. Sans cette structure, l'optimisation devient un travail d'archéologie financière.
Pilier 1 : Obtenir une visibilité granulaire sur vos dépenses
Configurer Cost Explorer et les rapports personnalisés
Cost Explorer, accessible depuis la console GCP (Billing > Cost Explorer), offre 13 mois d'historique gratuit. Mais la configuration par défaut ne suffit pas. Pour un vrai contrôle, vous devez créer des vues personnalisées filtrées par :
- Labels de ressource (méthode recommandée par Google)
- Projets individuels
- Services GCP spécifiques
- Régions (les coûts varient de 2 à 30 % entre zones)
Configuration des labels pour le FinOps
Les labels (ou tags) constituent le fondement d'une analyse de coûts granulaire. Je recommande une convention de nommage stricte :
environment: prod|dev|staging|qa
team: data-engineering|backend|frontend|mlops
cost-center: CC-12345
application: recommendation-engine|user-api|payment-processor
owner: prenom.nom@entreprise.com
Attention aux limites : 64 labels par ressource, 50 valeurs uniques par clé. Évitez les labels avec des données personnelles (PII) pour des raisons de conformité RGPD.
Créer des budgets et alertes intelligentes
Les budgets GCP permettent de définir des seuils et des déclencheurs d'alerte. Configuration recommandée :
- Créez un budget par projet (visibilité granulaire)
- Définissez des seuils progressifs : 50 %, 75 %, 90 %, 100 %
- Liez les alertes à des canaux Slack dédiés (#finops-alerts)
- Configurez également des budgets par catégorie de service pour les gros postes (Compute, BigQuery)
Les alertes peuvent déclencher des automatisations via Cloud Functions : arrêt automatique de VMs dev le weekend, réduction de la taille des clusters GKE en heures creuses, ou notification du responsable projet.
Pilier 2 : Stratégies d'optimisation des coûts Compute
Comprendre et maximiser les Sustained Use Discounts (SUDs)
Google applique automatiquement des remises de 20 à 30 % quand vous utilisez une instance au-delà de 25 % du mois. Ces remises sont progressives :
- 25-50 % d'utilisation : 20 % de remise
- 50-75 % : 25 % de remise
- 75-100 % : 30 % de remise
Le problème : ces remises sont volatiles. Si votre utilisation fluctuate (batch processing, workloads saisonniers), vous ne pouvez pas compter sur ces remises pour la planification budgétaire.
Recommandation terrain : documentez votre consommation moyenne mensuelle avec Cost Explorer sur 3 mois minimum avant de négocier des engagements. L'erreur classique : s'engager sur des CUDs en se basant sur des pics de consommation ponctuels.
Committed Use Discounts (CUDs) : quand et comment les négocier
Les CUDs offrent des remises de 37 à 70 % contre un engagement d'utilisation sur 1 ou 3 ans. Deux types existent :
CUDs régionaux : liés à une région spécifique (us-central1, europe-west1). Remises plus élevées (jusqu'à 70 %) mais moins flexibles.
CUDs convertibles : permettent de changer de famille de machine pendant la période d'engagement. Remises légèrement inférieures (environ 57 % vs 70 % pour un engagement 3 ans) mais plus adaptés aux environnements en évolution.
Calculateur d'économie CUD
| Engagement | Remise approximative | Cas d'usage |
|---|---|---|
| 1 an, région | 37-43 % | Workloads stables, migration en cours |
| 3 ans, région | 57-70 % | Infrastructure critique,BAU établi |
| 1 an, convertible | 25-30 % | Évolution technologique prévue |
| 3 ans, convertible | 45-57 % | Architecture en transition |
Astuce de négociation : commandez vos CUDs en dollars, pas en instances. Vous pouvez ensuite affecter les dollars à n'importe quelle machine de la famille choisie. Cela vous donne une flexibilité appréciable.
Spot VMs : diviser vos coûts Compute par 5 à 10
Les Spot VMs utilisent la capacité excédentaire de GCP à des tarifs réduits de 60 à 91 %. Pour des workloads interruptibles (batch processing, CI/CD, ML training, Hadoop/Spark), c'est le levier d'économie le plus puissant.
Limitations à connaître :
- Google peut reprendre l'instance avec un préavis de 30 secondes
- Pas de garantie de disponibilité (0,5-5 % de discount selon la région)
- Non disponibles pour les instances mémoire-optimisées (más de 64 GB)
Implémentation recommandée :
# Exemple Terraform pour Spot VM
resource "google_compute_instance" "batch_worker" {
name = "batch-spot-vm"
machine_type = "n2-standard-8"
zone = "europe-west1-b"
scheduling {
preemptible = true
automatic_restart = false
on_host_maintenance = "TERMINATE"
}
boot_disk {
initialize_params {
image = "debian-11-bullseye"
}
}
}
Combinez avec un orchestrateur (Kubernetes, Batch) qui détecte les interruptions et reschedule automatiquement les workloads.
Rightsizing : l'art de ne pas surprovisionner
Google Cloud propose des recommandations de rightsizing via Cost Explorer. Ces suggestions analysent l'utilisation CPU et mémoire sur 7, 30 ou 60 jours et proposent des-downtaille quand la capacité excède les besoins.
Bénchmarks d'utilisation типиques :
- Environnements de dev/test : 15-25 % CPU moyen est acceptable
-Environnements de production : visez 40-70 % CPU en heure de pointe - Bases de données critiques : 60-80 % CPU pour laisser une marge de burst
Attention aux effets rebond : si vous réduisez la taille d'une VM de 8 à 4 vCPUs, le coût du licensing SQL Server ou Oracle reste identique car ces licences sont souvent calculées sur le nombre de cores. Calculez l'économie nette avant d'appliquer.
Pilier 3 : Optimisation des services de données (BigQuery et Cloud Storage)
BigQuery : maîtriser le coût du scan de données
BigQuery facture uniquement les données traitées. Une requête mal optimisée sur une table de 10 To peut coûter 50 $ en quelques secondes. Stratégies d'optimisation :
Partitionnement et clustering
- Partitionnez vos tables sur une date ou un timestamp pour limiter le scan
- Clustering sur les colonnes filtrées fréquemments réduit les coûts de 60 à 90 %
- Coût typique d'une table partitionnée : 0,02 $/Go/mois vs 0,02 $/To scanné par requête
Slots on-demand vs slots fixes
- Mode on-demand : 1 To de scan = 5 $
-Réservations de slots (flat-rate) : экономически intéressant à partir de 500 $/mois de requêtes
Recommandation : commencez en on-demand, mesurez votre consommation BigQuery sur 2 mois, puis calculez si une réservation de slots devient rentable.
Cloud Storage : choisir la bonne classe de stockage
GCP propose 6 classes de stockage avec des différences de prix importantes :
| Classe | Tarif $/Go/mois | Disponibilité | Cas d'usage |
|---|---|---|---|
| Standard | 0,020 | 99,99 % | Données actives, médias |
| Nearline | 0,010 | 99,95 % | Backup < 30 jours |
| Coldline | 0,004 | 99,95 % | Archive 90+ jours |
| Archive | 0,0012 | 99,95 % | Compliance, archives légales |
| Dynamic Storage | Variable | Variable | Automatisation intelligente |
Stratégie recommandée : implémentez des Lifecycle Policies pour automatiser la transition entre classes. Par exemple : passage en Nearline après 30 jours d'inactivité, Coldline après 1 an, Archive après 5 ans.
Gouvernance FinOps : politique et automatisation
Politique de labellisation obligatoire
Imposez des labels sur toutes les ressources via Organization Policy :
{
"constraint": "constraints/_requiredlabels",
"listPolicy": {
"includedValues": [
"environment",
"team",
"cost-center",
"owner"
]
}
}
Les ressources sans ces labels ne pourront pas être créées. Combinez avec un audit mensuel des ressources non labellisées pour corriger les exceptions.
Automation FinOps : exemples concrets
Arrêt automatique des VMs de dev
Créez une Cloud Function déclenchée par Cloud Scheduler (lancement quotidien à 19h) qui arrête toutes les VMs avec le label environment:dev :
def stop_dev_vms(request):
compute = build('compute', 'v1', credentials=creds)
filter_expr = 'labels.environment=dev'
instances = compute.instances().list(
project=PROJECT_ID, zone=ZONE, filter=filter_expr
).execute()
for instance in instances.get('items', []):
compute.instances().stop(
project=PROJECT_ID, zone=ZONE, instance=instance['name']
).execute()
Économie типиque : 8h/jour × 5 jours/semaine = 40h/semaine d'économie sur 50 VMs de dev = ~2000 heures/mois. À 0,05 $/vCPU/heure pour une n2-standard-2, cela représente 100 $/mois par VM, soit 5000 $/mois pour l'équipe.
Dashboard FinOps pour le management
Créez un dashboard Looker Studio (Data Studio) consolidé pour vos équipes finance et direction :
- Coût total par mois (derniers 12 mois)
- Projection de fin de mois vs budget
- Top 10 des services les plus coûteux
- Évolution par projet et par équipe
- Recommandations d'optimisation non appliquées
Cela transforme le FinOps d'une préoccupation technique en indicateur business partagé.
Anti-patrons FinOps : les erreurs coûteuses à éviter
1. Acheter des CUDs trop tôt
Réserver des engagements avant d'avoir stabilisé votre architecture génère des coûts de rupture (0 % de remboursement la première année sur les CUDs régionaux). Patientez 2-3 mois de mesure.
2. Ignorer les coûts egress
Le transfert de données sortantes (egress) coûte entre 0,08 et 0,19 $/Go selon la destination. Un client a découvert que son architecture « économique » lui coûtait 40 000 $/mois en egress vers des APIs tierces.
3. Mélanger environnements sur les mêmes ressources
Ne mutualisez pas prod et dev sur les mêmes VMs « pour simplifier ». La compression (noisy neighbors) impacte la prod, et vous perdez la granularité de cost attribution.
4. Négliger les licences included
GCP inclut certains logiciels (Windows Server dans les images, SQL Server Basic dans les VMs SQL pre-configurées). Vérifiez toujours si une option incluse couvre vos besoins avant d'activer des licences BYOL (Bring Your Own License).
Feuille de route d'implémentation FinOps
Semaine 1-2 : Visibilité
- Structurer les folders et projets GCP
- Implémenter la politique de labels obligatoire
- Configurer Cost Explorer avec des vues par équipe et service
Semaine 3-4 : Alertes
- Créer des budgets par projet et par service (> 10k $/mois)
- Configurer les canaux d'alerte (Slack, email)
- Déployer le dashboard Looker Studio
Mois 2 : Premières optimisations
- Analyser et appliquer les recommandations rightsizing
- Migrer les workloads interruptibles vers Spot VMs
- Configurer les Lifecycle Policies Cloud Storage
Mois 3 : Engagements
- Calculer les CUDs нужных basedés sur 3 mois de données
- Négocier et déployer les engagements regionaux
- Documenter la politique FinOps (runbook)
Mois 4+ : Amélioration continue
- Revoir mensuellement les recommandations non appliquées
- Automatiser les optimisations récurrentes
-Former les équipes de développement (cost-aware coding)
Conclusion : le FinOps comme avantage compétitif
La maîtrise des coûts cloud n'est plus une option, c'est une nécessité de compétitivité. Les entreprises qui réussissent leur transformation FinOps ne se contentent pas de réduire leurs factures : elles developpent une capacité à expérimenter plus (grâce aux Spot VMs), à scaler plus rapidement (grâce à la visibilité), et à réaffecter les économies vers l'innovation.
Les outils GCP (Cost Explorer, Budgets, Recommandations) sont matures et couvrent 80 % des besoins d'une démarche FinOps. Le facteur humain reste déterminant : culture de l'optimisation partagée, formation des développeurs, et engagement du management à faire du coût cloud un KPI légitime au même titre que la performance ou la disponibilité.
Commencez par la visibilité. Sans données fiables, aucune optimisation n'est possible. Puis itérez : mesurez, agissez, vérifiez. En 6 mois, une démarche FinOps bien exécutée génère typiquement 25 à 35 % d'économie sur une infrastructure non optimisée.
Insights cloud hebdomadaires — gratuit
Guides pratiques sur les coûts cloud, la sécurité et la stratégie. Sans spam.
Comments