Share:

Olga Lugai nous fait part des principaux points à retenir de sa visite virtuelle à la KubeCon 2020.

KubeCon, la conférence phare de quatre jours de la Cloud Native Computing Foundation (CNCF), a rassemblé les communautés open-source et cloud native du monde entier pour un événement virtuel. Entre le 17 et le 20 novembre 2020, tous les participants ont pu accéder à une plateforme de conférence en ligne proposant une série de conférences, d’ateliers, de tutoriels, d’événements sponsorisés, et même des jeux et des quizz.

Il s’agissait d’une excellente occasion pour toutes les personnes impliquées ou intéressées par la communauté open-source de se réunir virtuellement et de se connecter les unes aux autres depuis le confort de leur maison. Les nouvelles sur les projets gradués et en incubation de la CNCF, les nouvelles approches du développement et des opérations Cloud natif, les histoires d’utilisateurs finaux, et bien plus encore ont été discutées pendant ces quatre jours.

Assister à un événement virtuel était inhabituel : toutes les conversations et les applaudissements se sont déplacés vers les canaux Slack, le réseautage vers les sessions Virtual Happy Hour dirigées par Priyanka Sharma, directeur général de la CNCF, et les présentations sur une scène ont été remplacées par les vidéos préenregistrées et les sessions QnA en direct.

Il semblait difficile de suivre le développement de nouveaux outils alors que le paysage du « Cloud natif » se développe rapidement. Cependant, les présentateurs de la KubeCon n’ont pas laissé les participants se débrouiller seuls avec ces complexités. Je vous recommande de regarder « A Flight Over the Cloud Native Landscape » présenté par Carson Anderson. Carson passe en revue la plupart des projets qui façonnent le paysage Cloud natif actuel. Les enregistrements des présentations de la KubeCon sont maintenant disponibles sur la chaîne Youtube CNCF.

J’ai regroupé mes principales conclusions en cinq thèmes :

Accent accru sur la sécurité

  • Si vous êtes intéressé(e) par les développements récents en matière de sécurité Cloud native, suivez le groupe d’intérêt spécial pour la sécurité de la CNCF. Il vise à créer un écosystème d’outils pour la création d’applications Cloud sécurisées et procède à l’évaluation de la sécurité des projets CNCF. Vous pouvez en savoir plus sur leur travail sur leur page Github et même les rejoindre dans leurs efforts.
  • Obtenez la certification : la CNCF a lancé le nouvel examen « Certified Kubernetes Security Specialist ». Il a été créé en réponse au développement des meilleures pratiques de sécurité pour les systèmes Cloud natifs et au besoin de développer une base de référence pour les compétences axées sur la sécurité. 
  • Si vous devez activer les alertes de sécurité, consultez Falco, le premier projet de sécurité d’exécution à être promu au niveau d’incubation de la CNCF. Il vous avertira en cas de changements inattendus dans le système et de violation des règles.
  • Comment s’assurer que votre système est sécurisé ? Pour répondre à cette question, les membres de la communauté ont créé le guide Attacking and Defending Kubernetes Clusters: A Guided Tour Walkthrough Guide, qui a été présenté à la KubeCon l’année dernière. Découvrez les techniques qu’un attaquant pourrait utiliser et les moyens de protéger votre système. Comme l’a conclu un présentateur de la KubeCon, le moyen le plus rapide d’identifier les failles de sécurité dans votre système est de le considérer comme un attaquant et de prévoir les pires scénarios lorsque, par exemple, un conteneur est compromis.

Pratiques GitOps

  • Vous voulez voir votre environnement évoluer en fonction des mises à jour de votre dépôt ou même de vos feuilles de calcul Google ? Si oui, découvrez ce que GitOps a à offrir. Des projets comme Argo, avec ses capacités de visualisation, ou Flux, permettent d’appliquer automatiquement les changements aux clusters. En approuvant une Pull Request avec un changement de configuration, vous pouvez voir un cluster être mis à jour devoir effectuer d’étapes supplémentaires.
  • GitOps aide à suivre l’état de tous les clusters, assure la cohérence entre tous les environnements et vous permet de revenir à un état antérieur d’un cluster en faisant référence à une version de travail de votre code. Toute dérive par rapport à l’état souhaité obligera le système à se mettre à jour sans nécessiter d’intervention manuelle. Pour en savoir plus sur la technique GitOps, regardez la présentation de Cornelia Davis, CTO de WeaveWorks, à la KubeCon.
  • Qu’en est-il de Google Spreadsheets ? Katie Gamanji appelle cette approche SheetOps : vous pouvez connecter vos feuilles de calcul Google à un cluster et, en modifiant les valeurs de la feuille, déclencher les changements dans votre environnement. Essayez vous-même avec le code GitHub repo.

Étendre les capacités de kubectl

  • Comment ? En utilisant des plugins. Par exemple, kubetail peut vous aider à agréger les journaux de plusieurs pods, kubectl ns modifie facilement l’espace de noms kubernetes et kubectx change de contexte. Pour gérer les plugins, vous pouvez utiliser Krew.

Gestion de la configuration

  • Vous avez peut-être déjà utilisé Helm qui vous permet d’écrire les graphiques Helm réutilisables, mais qu’en est-il de la réutilisation de votre code pour différents environnements ? Et pour le faire sans utiliser de modèles ? Kustomize vous permet de référencer plusieurs objets personnalisés provenant de différentes sources et de créer des superpositions en ajoutant des fichiers de configuration spécifiques pour chaque environnement. Pour plus d’exemples d’utilisation de modèles et de superpositions, consultez un article de blog sur JFrog.
  • Abstraction – des outils comme Pulumi, cdk8s et Helm peuvent créer les abstractions d’objets Kubernetes à l’aide de langages de programmation. Cependant, vous devez trouver le bon équilibre entre l’abstraction des objets Kuberentes et le fait de laisser les développeurs tout configurer eux-mêmes. Par exemple, les abstractions vous permettent de contrôler les normes à l’échelle de l’organisation, mais elles peuvent aussi « cacher » ce qui cause un problème avec vos objets Kubernetes. 

Histoires d’utilisateurs finaux

  • L’importance de se connecter avec les utilisateurs finaux et d’obtenir leur retour d’information a certainement été au centre de toute la conférence. En discutant de la sortie de la nouvelle version de Helm, les mainteneurs de Helm ont convenu que le fait d’écouter un utilisateur final et de comprendre ses préoccupations et ses problèmes est essentiel à leur engagement à itérer continuellement.
  • Nous cassons tous des choses, et les développeurs d’Airbnb, Joseph Kim et Jian Cheung, n’ont pas peur de l’admettre et de partager leur expérience de la casse de leurs clusters. Soyez prêt à évoluer verticalement, utilisez des conteneurs init, soyez conscient des autres processus qui s’exécutent sur vos pods et ajustez les limites en conséquence, ayez un bon traitement des erreurs et des alertes pour les problèmes d’infrastructure, soyez conscient de la commande d’application k8s – ce n’est qu’une partie des leçons apprises dans leur équipe. Vous pouvez regarder leur présentation ici.

Il nous arrive à tous de casser des choses, mais pourquoi ne pas apprendre des erreurs des autres> Surtout lorsqu’un événement aussi important que la KubeCon nous en donne l’occasion !

Où que vous soyez, quels que soient vos intérêts particuliers, nous avons tous pu bénéficier du contenu informatif et perspicace que la KubeCon avait à offrir. Les projets CNCF ne cessent de mûrir, de nouveaux outils sont introduits et, à mesure que ce vaste paysage Cloud natif s’étend, les possibilités qui s’offrent à nous dans ce monde Cloud natif innovant se développent également ! Gardez donc un œil sur les nouveaux événements liés au Cloud natif !

Découvrez comment Kubernetes peut aider votre entreprise à se moderniser

Notre Kubernetes Launchpad est une solution à fort impact qui aide les équipes d’entreprise à découvrir rapidement les avantages du développement d’applications Cloud natives en déployant rapidement une plateforme DevOps et en replatformant une application sur la plateforme cloud de votre choix : AWS, GCP ou Azure.