Sélectionner une page

Formation > Blog > DevOps > Vive le ROI : optimiser ses coûts d’infrastructure Kubernetes

Kubernetes (et les infrastructures cloud-natives de manière générale) peut rapidement devenir un gouffre financier important lorsque la gestion n’est pas optimisée pour vos besoins réels plutôt que pour vos besoins prévus. Dans cet article, nous allons voir quelles sont les bonnes pratiques pour aligner vos clusters.

Vous connaissez déjà surement cette situation : la facture de votre cloud augmente encore et encore et on vous demande encore un nouveau nœud, pourtant vos clusters ne sont (presque) jamais saturés. C’est un phénomène commun lorsque les clusters sont pilotés à la peur plutôt qu’aux besoins réels.

Kubernetes n’est pas intrinsèquement coûteux, mais il peut rapidement le devenir dans des organisations multiéquipe aux nombreuses exigences et dont la facturation arrive bien trop tard pour servir de tableau de bord.

Le résultat ? Des environnements qui tournent souvent à vide, du surdimensionnement “au cas où” et des économies qui passent à la trappe.

L’équipe Ambient IT

Pourquoi Kubernetes coûte si cher en cas de mauvais pilotage ?

En soi, la réponse est très simple : Kubernetes réserve de la capacité avant de la consommer.

Concrètement, cela veut dire que, quand vos applications déclarent des ressources “réservées” (les requests), le cluster se comporte comme si cette capacité devait être disponible en permanence.

Même si l’application n’utilise que 10 à 20% de ce qu’elle a réservé, la place reste “bloquée”. Et si la place est bloquée, vous payez des machines supplémentaires pour faire tourner… du vide.

Le but est donc de mettre en place des garde-fous afin de corriger durablement cette situation.

Identifier les bonnes métriques

Avant de faire des corrections techniques, la mise en place d’une véritable baseline de consigne est cruciale. Pour cela, pas besoin d’un reporting trop compliqué, seuls quelques indicateurs suffisent :

  • Le coût mensuel par cluster et par environnement (prod / non-prod).
  • L’écart entre ressources réservées et réellement utilisées (CPU et mémoire).
  • La part de capacité “idle” (payée, peu utilisée).
  • Le coût par unité métier (ex : €/commande, €/client actif, €/1 000 requêtes).

Une fois que ces métriques sont acquises et maîtrisées, on peut tirer les leviers qui permettent de réelles économies.

Les 6 leviers qui génèrent le plus de ROI

Ajuster les réservations

Dans énormément d’entreprises, la première piste d’économie vient d’applications qui réservent beaucoup plus que nécessaire.

Pour le vérifier, la méthode est plutôt simple :

  • Observez la consommation réelle sur 2 à 4 semaines
  • Ajustez progressivement, service par service, avec une marge
  • Déployez d’abord en non-prod, puis en prod sur les services les moins critiques

Pourquoi c’est rentable ? quand les réservations baissent, le cluster “tasse” mieux les workloads, et vous pouvez réduire le nombre de nœuds (ou retarder les ajouts).

Les bureaux vides

Dev et staging sont souvent un poste de coût énorme… pour une valeur faible la nuit et le week-end.

Pour ça, il existe 3 méthodes possibles (du plus simple au plus ambitieux)

  • Extinction planifiée (nuit + week-end)
  • Mise en pause automatique quand personne n’utilise
  • Environnements éphémères (créés pour un besoin, détruits ensuite)

C’est un levier avec virtuellement aucun risque, très facile à mettre en place.

Exploiter l’élasticité

Dans beaucoup de cas, les infrastructures sont dimensionnées comme si elles étaient en permanence en tension. Or, le pic n’est pas la norme.

Faire varier la capacité en fonction de la charge réelle vous permettra de payer à l’usage et non au coût d’un scénario catastrophe ( qui représentera 5% du temps mais 100% de la facture).

L’élasticité consiste à adapter dynamiquement :

  • Le nombre d’instances applicatives au lieu de faire tourner 10 instances toute la journée “au cas où”, on peut augmenter automatiquement le nombre d’instances quand la charge monte et les réduire quand la demande baisse
  • Le nombre de nœuds du cluster
  • Voire le type de nœuds utilisés

Un cluster moderne peut ajouter des nœuds automatiquement quand les pods manquent de place et en retirer quand ils ne sont plus nécessaires.

C’est ici que le gain devient significatif : moins de charges veut dire moins de nœuds veut dire moins de facture.

Attention tout de même, trop de contraintes d’affinité (règles complexes de placement) empêchent un bon “remplissage” des nœuds et il est facile de tomber dans le travers des réservations surdimensionnées qui bloquent l’optimisation.

Acheter moins cher

Certaines capacités cloud sont moins chères car elles peuvent être interrompues. C’est un excellent levier ROI mais uniquement si vous l’appliquez aux bons workloads.

Dans les bons candidats pour ce genre de pratiques, on trouve : batch/jobs, CI/CD, workers stateless, staging/dev, et services capables de redémarrer automatiquement.

Traquer les coûts cachés

Quand on parle d’optimisation Kubernetes, tout le monde pense directement “nœuds” et “CPU”.
En réalité, une part significative des dérives budgétaires vient d’éléments moins visibles qu’on ne soupçonnerait pas de prime abord :

  • Logs et observabilité : dans les organisations matures, logs, métriques et traces peuvent représenter un poste majeur, parfois équivalent à plusieurs nœuds de production. Pour éviter l’explosion des prix, il est important de standardiser les formats et de supprimer les logs redondants pour limiter les doublons. Vous pouvez également agir sur la rétention (vous n’avez pas besoin de conserver ces données pendant 1 an) et le contrôle de vos métriques. Trop de labels dynamiques entraînent une explosion des coûts.
  • Stockage : volumes surdimensionnés, classes de stockage premium utilisées par défaut ou Snapshots conservés sans politique claire sont des problèmes courants. Pour éviter ces problèmes, un audit régulier de vos volumes est crucial. Il est également important d’adapter la classe de stockage à l’usage (toutes les bases n’ont pas besoin du stockage le plus performant) et de mettre en place une politique de lifecycle de vos snapshots.
  • Réseau : les problèmes réseau sont rarement envisagés jusqu’à la première facture egress. Une mauvaise architecture des services entraine des communications inter-zones fréquentes et des transferts sortants vers Internet.
  • Services managés annexes : ici, le problème ne vient pas d’un gros service qui vous mange votre ROI mais de 40 (ou plus) petits qui passent individuellement sous les radars. On parle ici de clusters de base de données sous-utilisés, d’outils internes créés pour un projet pilote ou d’environnements de test jamais supprimés. Pas de secret ici : il faut passer en revue les différents services et regarder de manière pragmatique ce qu’il faut garder ou supprimer. Une règle d’or : pas d’owner identifié ? Poubelle.

Mettre en place la gouvernance

La différence entre une optimisation ponctuelle et un gain durable tient à un mot : gouvernance.

Pour garder le cap et s’assurer que les optimisations restent dans le temps il faut savoir s’imposer des règles claires :

  • Un owner clair (Platform + FinOps, ou un duo)
  • Un reporting par équipe/produit (showback) : “voici ce que tu coûtes”
  • Des standards simples (valeurs par défaut raisonnables, garde-fous)
  • Un rituel mensuel : top 10 des services les plus coûteux, actions, suivi

L’objectif est ici de créer une culture du feedback qui permet d’identifier les anomalies rapidement et avant que les factures n’explosent.

Optimiser Kubernetes : une discipline

Optimiser Kubernetes, c’est bien plus que simplement “couper dans la prod”. C’est aussi arrêter de payer des réservations fictives, aligner le non-prod sur son usage réel, acheter moins cher quand c’est pertinent et instaurer une gouvernance qui empêche la dérive.

Commencez par mesurer et rendre le coût visible : c’est le déclencheur le plus puissant. Le reste devient une série d’actions priorisées par ROI, avec des gains rapides puis durables.

UNE QUESTION ? UN PROJET ? UN AUDIT DE CODE / D'INFRASTRUCTURE ?

Pour vos besoins d’expertise que vous ne trouvez nulle part ailleurs, n’hésitez pas à nous contacter.

ILS SE SONT FORMÉS CHEZ NOUS

partenaire sncf
partenaire hp
partenaire allianz
partenaire sfr
partenaire engie
partenaire boursorama
partenaire invivo
partenaire orange
partenaire psa
partenaire bnp
partenaire sncf
partenaire hp
partenaire allianz
partenaire sfr
partenaire engie
partenaire boursorama
partenaire invivo
partenaire orange
partenaire psa
partenaire bnp