BLOG

Comment mesurer et minimiser le coût total de possession de Kubernetes

Miniature F5
F5
Publié le 10 décembre 2020

Le téléchargement et l’exécution de Kubernetes sont peut-être gratuits, mais son utilisation est loin d’être gratuite. Comme d’autres grandes plateformes open source qui ne sont « gratuites » que dans un sens simpliste, Kubernetes vous coûtera presque certainement de l’argent à déployer et à exploiter.

Le montant dépend de divers facteurs, tels que la manière dont vous déployez Kubernetes et les outils et processus que vous utilisez pour le gérer. Pour certaines organisations, Kubernetes est presque gratuit. Pour d’autres, cela pourrait bien entraîner des dépenses totales bien plus élevées qu’une plateforme logicielle propriétaire.

Pour vous aider à évaluer combien Kubernetes coûtera à votre équipe, cet article explique quels facteurs contribuent aux dépenses de Kubernetes et comment déterminer vos coûts totaux pour Kubernetes.

Facteurs de coût de Kubernetes

Pour calculer le coût total d’une installation Kubernetes, vous devez peser chacun des facteurs qui contribuent aux coûts de Kubernetes. Elles ne s’appliquent pas toutes à toutes les situations, mais ce sont toutes des variables à prendre en compte lors de la conception d’une stratégie Kubernetes rentable.

Coût de la distribution Kubernetes

Contrairement à Linux, par exemple, il n’existe pas vraiment de distribution Kubernetes totalement gratuite et soutenue par la communauté. ( OKD , une distribution communautaire sponsorisée par Red Hat, pourrait être l'exception.) Au lieu de cela, il existe une variété de distributions commerciales Kubernetes. La plupart d'entre eux proposent des niveaux gratuits pour les clusters à petite échelle, mais ils facturent des frais pour les installations de niveau production et/ou pour les services d'assistance professionnels.

Ainsi, le premier facteur de coût à prendre en compte pour Kubernetes est les frais de licence associés à la distribution que vous utilisez. À moins que vous ne prévoyiez d’exécuter un cluster d’une douzaine de nœuds ou moins, attendez-vous à payer pour votre distribution.

Coût du nœud Kubernetes

Kubernetes a besoin de serveurs pour fonctionner. Il transforme ces serveurs en nœuds et les utilise pour créer vos clusters.

Vos nœuds peuvent se trouver sur vos propres serveurs sur site ou sur des serveurs basés sur le cloud. Quoi qu'il en soit, c'est vous qui les paierez.

De toute évidence, les structures de coûts associées à votre infrastructure Kubernetes varieront en fonction du type de serveurs que vous utilisez. Pour le matériel sur site, vous avez un coût d’acquisition initial important, puis des coûts de maintenance continus relativement faibles. Pour les serveurs cloud, il n’y a pas de dépenses d’investissement initiales, mais vous paierez des frais récurrents sur une base mensuelle.

Coûts de transit des données

Si vous exécutez Kubernetes dans le cloud à l’aide de machines virtuelles que vous gérez vous-même, vous devrez (dans la plupart des cas) payer non seulement pour les serveurs virtuels qui alimentent vos nœuds, mais également les frais de réseau associés à la sortie des données.

En général, ces coûts seront relativement faibles pour les clusters qui conservent la plupart de leurs données dans le même cloud. Toutefois, si vous utilisez Kubernetes pour héberger des applications qui envoient beaucoup de données hors du cloud, ces frais de sortie s'additionneront.

Coûts de stockage

De même, vous devez payer pour le stockage pour héberger vos données Kubernetes. Si vous exécutez uniquement des applications sans état, vos besoins et coûts de stockage de données seront faibles. Mais pour les applications qui ingèrent ou produisent plusieurs gigaoctets de données, vous devrez soit payer pour votre propre support de stockage sur site pour tout héberger, soit l'héberger dans un service de stockage cloud.

Vous souhaitez probablement également sauvegarder vos données Kubernetes, ce qui peut facilement doubler ou tripler vos coûts de stockage globaux, car cela vous oblige à conserver plusieurs copies des données.

Frais de personnel

Votre équipe doit consacrer du temps à la maintenance de votre cluster Kubernetes. Le temps qu'ils y consacrent varie en fonction du niveau de maintenance et de support de gestion offert par votre distribution Kubernetes. Certaines distributions, comme Canonical Kubernetes ou OpenShift Dedicated, offrent des services Kubernetes étendus et entièrement gérés. Avec d’autres, comme OpenShift de base, la majeure partie de la charge de maintenance vous incombe.

Vous pouvez également utiliser un service de gestion Kubernetes tiers (comme celui de Platform9) pour automatiser une grande partie du flux de travail de gestion. Mais vos ingénieurs devront toujours être impliqués dans la gestion. Il n’existe pas d’expérience Kubernetes totalement autonome.

Ainsi, les dépenses associées au temps du personnel chargé de gérer Kubernetes peuvent varier considérablement, mais elles existeront toujours.

Coûts de déploiement des applications

Plus vite vous pourrez déployer des applications sur votre cluster, plus vous tirerez de valeur de Kubernetes et plus votre stratégie Kubernetes sera rentable. Pour cette raison, il vaut la peine de réfléchir à l’aspect de votre processus de déploiement, à son caractère manuel et au nombre de versions que vous pouvez gérer par jour ou par semaine. Bien qu’il s’agisse d’un coût quelque peu intangible, un pipeline de déploiement d’applications qui ne peut gérer qu’un seul déploiement par semaine vous coûtera beaucoup plus cher par déploiement qu’un pipeline qui déploie une ou plusieurs fois par jour.

Conclusion

Kubernetes n’est gratuit que si vos serveurs, réseaux, solutions de stockage et employés font tous leur travail gratuitement, ce qui n’est probablement pas le cas. C’est pourquoi, avant de vous engager dans une stratégie Kubernetes, il est important d’évaluer les différents facteurs qui ont un impact sur le coût de Kubernetes et de vous assurer également que l’approche que vous adoptez minimise vos dépenses et permettra d’atteindre les performances que vous attendez de vos clusters.

Volterra peut vous aider. En fournissant une plate-forme de gestion d'applications et d'infrastructures pour surveiller tous les clusters Kubernetes, quel que soit le type d'infrastructure que vous utilisez pour les héberger (qu'il s'agisse d'un cloud unique, d'un multicloud ou sur site), Volterra élimine une grande partie des incertitudes liées à la planification et à la gestion de Kubernetes. Volterra ne rendra pas vos clusters Kubernetes totalement gratuits (vous continuerez à payer pour l'infrastructure, les licences et le temps du personnel), mais cela réduira la quantité d'efforts requis pour déployer et gérer Kubernetes tout en augmentant le rythme de déploiement des applications. Cela se traduit par un coût total de Kubernetes inférieur et une valeur globale supérieure.