Kubernetes peut-il aider à résoudre les problèmes d’automatisation ?


  • Français


  • J’ai commencé mon parcours d’automatisation lorsque j’ai adopté Gentoo Linux comme système d’exploitation principal en 2002. Vingt ans plus tard, l’automatisation n’est pas encore chose faite. Lorsque je rencontre des clients et des partenaires, ils partagent les victoires de l’automatisation au sein des équipes, mais ils décrivent également les défis à relever pour atteindre un succès similaire au niveau organisationnel.

    La plupart des organisations informatiques ont la possibilité de provisionner une machine virtuelle de bout en bout, réduisant ainsi un délai de quatre semaines à seulement cinq minutes. Ce niveau d’automatisation est lui-même un flux de travail complexe, nécessitant une mise en réseau (gestion des adresses IP, DNS, proxy, zones de mise en réseau, etc.), une gestion des accès aux identités, hyperviseur, stockage, sauvegarde, mise à jour du système d’exploitation, application des derniers fichiers de configuration, surveillance, sécurité et renforcement, et analyse comparative de la conformité. Ouah!

    Il n’est pas facile de répondre aux besoins de l’entreprise en matière de vitesse élevée, d’évolutivité et d’automatisation à la demande. Par exemple, considérez la boutique en ligne classique ou un service gouvernemental en ligne pour produire des déclarations de revenus. La charge de travail a des pics bien définis qui doivent être absorbés.

    Une approche courante pour gérer une telle charge consiste à disposer d’une batterie de serveurs surdimensionnée, prête à être utilisée par une équipe spécialisée de professionnels de l’informatique, surveillant l’afflux saisonnier de clients ou de citoyens. Tout le monde veut un déploiement juste à temps d’une pile entière. Ils veulent une infrastructure exécutant des charges de travail dans le cadre d’un scénario de cloud hybride, en utilisant le modèle “build-consume-trash” pour optimiser les coûts tout en bénéficiant d’une élasticité infinie.

    En d’autres termes, tout le monde veut l'”expérience cloud” utopique.

    Le cloud peut-il vraiment être efficace ?

    Tout n’est pas perdu, grâce notamment à la manière Kubernetes a été conçu. L’adoption exponentielle de Kubernetes alimente l’innovation, remplaçant les pratiques héritées standard pour la gestion des plates-formes et des applications. Kubernetes nécessite l’utilisation de Everything-as-Code (EaC) pour définir l’état souhaité de toutes les ressources, des simples nœuds de calcul aux certificats TLS. Kubernetes impose l’utilisation de trois constructions de conception majeures :

    • Une interface standard pour réduire les frictions d’intégration entre les composants internes et externes
    • Une approche API-first et API-only pour standardiser les opérations CRUD (Create, Read, Update, Delete) de tous ses composants
    • Utilisation de YAML comme langage commun pour définir tous les états souhaités de ces composants de manière simple et lisible

    Ces trois composants clés sont essentiellement les mêmes exigences pour le choix d’une plate-forme d’automatisation, du moins si vous souhaitez faciliter l’adoption par des équipes interfonctionnelles. Cela brouille également la séparation des tâches entre les équipes, ce qui contribue à améliorer la collaboration entre les silos, ce qui est une bonne chose !

    En fait, les clients et partenaires qui adoptent Kubernetes passent à un état d’hyper-automatisation. Kubernetes pousse naturellement les équipes à adopter plusieurs fondations et pratiques DevOps, comme EaC, le contrôle de version avec Git, les revues par les pairs, la documentation en tant que code, et encourage la collaboration interfonctionnelle. Ces pratiques aident à faire mûrir les compétences d’automatisation d’une équipe, et elles aident une équipe à prendre un bon départ dans les pipelines GitOps et CI/CD traitant à la fois du cycle de vie des applications et Infrastructure.

    Faire de l’automatisation une réalité

    Vous avez bien lu ! L’ensemble de la pile pour les systèmes complexes comme une boutique en ligne ou les rapports gouvernementaux peut être défini en termes clairs, compréhensibles et universels qui peuvent être exécutés sur n’importe quel fournisseur sur site ou cloud. Un autoscaler avec des métriques personnalisées peut être défini pour déclencher un déploiement juste à temps de la pile souhaitée pour répondre à l’afflux de clients ou de citoyens pendant les pics saisonniers. Lorsque les métriques reviennent à la normale et que les ressources de calcul cloud n’ont plus de raison d’exister, vous les supprimez et revenez aux opérations normales, avec un ensemble d’actifs de base sur site prenant le contrôle de l’entreprise jusqu’à la prochaine vague.

    Le paradoxe de la poule et de l’œuf

    Compte tenu de Kubernetes et des modèles natifs du cloud, l’automatisation est indispensable. Mais cela soulève une question importante : une organisation peut-elle adopter Kubernetes avant d’aborder la stratégie d’automatisation ?

    Il peut sembler que commencer avec Kubernetes pourrait inspirer une meilleure automatisation, mais ce n’est pas gagné d’avance. Un outil n’est pas une réponse au problème des compétences, des pratiques et de la culture. Cependant, une plate-forme bien conçue peut être un catalyseur pour l’apprentissage, le changement et la collaboration interfonctionnelle au sein d’une organisation informatique.

    Démarrer avec Kubernetes

    Même si vous sentez que vous avez raté le train de l’automatisation, n’ayez pas peur de commencer avec Kubernetes sur une pile simple et simple. Embrassez la simplicité de cet orchestrateur fantastique et itérez avec des besoins plus complexes une fois que vous avez maîtrisé les étapes initiales.

    Source

    Houssen Moshinaly

    Pour contacter personnellement le taulier :

    Laisser un commentaire

    Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

    Copy code