Il y a 1 mois · 7 minutes · Events

Retour sur la DockerCon EU 2017

Cette année marque le retour de la DockerCon en Europe ! Après Amsterdam et Barcelone, Docker nous a emmenés à Copenhague pour deux jours de conférences, de révélations, de technique, de rencontres, d’échanges et de fun. Comme chaque année depuis maintenant quatre ans, Xebia (et WeScale) étaient présents.

Vous faire une présentation exhaustive des sessions serait inutile. Elles étaient toutes filmées et seront donc disponibles dans les jours à venir. À la place, nous allons plutôt vous livrer nos impressions. Et le moins qu’on puisse dire, c’est qu’elles sont mitigées. Ne vous y trompez pas, la DockerCon est une conférence exceptionnelle. C’est un modèle d’organisation, du marquage au sol depuis la station de métro, jusqu’à la mémorable et traditionnelle « party ». Tout est assuré pour le bonheur des participants et quand on connaît les difficultés à organiser un événement de taille raisonnable, on apprécie avec une pointe de jalousie le tour de force.

À vrai dire, nos regrets penchent plutôt du côté du contenu parfois trop commercial. Cette année le matraquage autour du programme phare de Docker, Modernize Traditional Apps (MTA) était peut-être un peu trop violent. 1h30 lors de la première keynote, 1h30 encore le lendemain, deux tracks entières dédiées… Nous comprenons parfaitement les enjeux pour Docker : s’attaquer au marché des applications legacy et mettre en avant les mérites de leur modernisation. Vendre ainsi la plateforme Docker EE (Enterprise Edition) semble un moyen crédible pour rentabiliser le fabuleux outil qu’est Docker. Mais en tant que développeurs nous n’avons pas attendu MTA et les outils afférents pour conteneuriser des applications Tomcat. Ouvrir la possibilité de conteneuriser des applications « legacy » (les guillemets étant là pour ne pas choquer nos lecteurs) à base de Websphere et DB2 n’est pas forcément une perspective des plus réjouissantes, même si nous comprenons que les leviers économiques en faveur de cette migration sont bien réels. Donc, au final, quelques points en moins pour l’omniprésence de MTA et Docker EE.

Mais ne boudons pas notre plaisir. L’annonce phare qui se murmurait depuis longtemps en coulisse à savoir le support natif de Kubernetes par Docker a suffi à gommer en grande partie les frustrations. Par ailleurs la salle Black Belt (menée de main de maître par MC Jérôme Petazzoni) et ses talks de haute volée ont nourri notre envie d’en apprendre toujours plus sur les conteneurs et son écosystème.

Voici ce que nous avons retenu de ces deux jours.

Les annonces : du Kubernetes sous le capot

Si vous avez suivi les DockerCon précédentes, vous avez dû comprendre que les annonces les plus importantes ont lieu lors des DockerCon US (Swarm, support de Windows, projet Moby…). Pour cette DockerCon EU 2017, il n’y a eu véritablement qu’une seule annonce mais de taille : le support Kubernetes dans Docker EE.

Il ne s’agit pas encore ici de supprimer le Swarm mode, mais bien de supporter les deux orchestrateurs en parallèle et d’avoir un seul outil pour les manipuler.

Dans la pratique nous écrirons toujours nos stacks compose pour déployer dans du Swarm. Les composants ainsi déployés seront disponibles sur Swarm et Kubernetes via les CLI docker et kubectl. Il ne s’agit pas d’une traduction du fichier compose en manifest Kubernetes mais bien d’une communication bidirectionnelle entre les deux orchestrateurs. Même si ces derniers mois ont laissé paraître une volonté de convergence (configMaps intégré à Swarm, rotation TLS intégrée à Kubernetes) le modèle de chacun des deux orchestrateurs est encore différent et certains éléments font l’objet de compromis, notamment pour les pods Kubernets et les stacks Docker.

Pour l’instant cette annonce ne concerne pas Docker CE. Les raisons en sont techniques, Kubernetes n’étant pas encore intégré de façon native. Il s’agit encore d’une synchronisation en temps réel des orchestrateurs. Ces processus de synchronisation sont intégrés à Docker EE qui supporte désormais Swarm (le « vieux »), Swarm mode (avec les services) et Kubernetes. Les versions Docker for Mac et Docker for Windows bénéficient toutefois de cette intégration mais ces deux produits ont l’habitude de nous masquer une immense complexité technique pour notre plus grand bonheur.

Que doit-on comprendre de cette annonce ?

  • Que Swarm va être abandonné ? Rien n’est écrit. ll pourrait d’ailleurs très bien devenir le catalyseur des installations de Kubernetes encore trop complexes.
  • Qu’on peut abandonner le Kubernetes traditionnel pour déployer Docker EE ? Une version stable est annoncée pour Q1 2018 mais le challenge technique est réel. Misons plutôt pour Q3 2018.
  • Que Docker a perdu la « guerre des orchestrateurs » ? Probablement. Cependant parler de guerre s’avère très inexact. Si guerre il y a, elle se fait entre communautés ouvertes. Cette intégration n’est possible QUE parce que ces communautés communiquent, se comprennent et se respectent.

Une bêta est ouverte sur le site de Docker, et la version stable devrait sortir d’ici Q1 2018.

Les Black Belt Sessions : un tigre dans le moteur

Le choix des sessions lors d’une conférence est toujours un moment inconfortable. Il faut trancher, décider des tracks les plus intéressantes et prier pour avoir fait le bon choix. Dans notre cas le choix a été plutôt évident.

Comme dit en introduction, nous avons globalement boudé les tracks MTA, Docker EE et sponsors (IBM, Azure, …). Soyons honnêtes, avec les années et l’expérience, nous ne sommes pas non plus le public visé par les sessions 101. Bref, la sélection commence biaisée.

Il nous restait alors « peu » de choix : des REX, des talks décalés sur la culture DevOps et les changements intrinsèques de l’entreprise mais surtout les fameuses Black Belt Sessions. Des sessions réservées aux ceintures noires en conteneurs qui parlent système et réseaux couramment. Nous avons globalement privilégié ces dernières. Assister aux Black Belt Sessions est toujours un pari dont le résultat varie du KO total à la nécessité de creuser le sujet abordé pour prétendre le comprendre sans trop rougir. Et le moins que l’on puisse dire c’est que nous en avons pris plein les dents.

Pour commencer pas de GUI sympathique. Comme l’a fait remarquer Jérome Petazzoni c’était à celui qui ouvrait son terminal le plus tôt dans la session (record à battre, moins de 3 minutes, introduction comprise). Le but de ces sessions est de plonger au cœur des mécanismes sous-jacents de Docker et de son écosystème, de comprendre pourquoi (et comment) la magie opère et de s’émerveiller (le mot n’est pas trop fort) en voyant tout ce que les outils prennent en charge à notre place. On citera en vrac :

  • La magie du réseau par Laurent Bernaille,
  • Les dessous de Serverless par Erica Windisch,
  • Une plongée dans la théorie des orchestrateurs et SwarmKit par Laura Franck et Stephen Day,
  • Un mal de crâne carabiné sur les optimisations de Prometheus 2.0 par Goutham Veeramachaneni,
  • Le mode ceinture / bretelles avec la sécurité native du Kernel par Cynthia Thomas,
  • Au cœur de Linux Kit par Justin Cormack et Rolf Neugebauer,
  • Les futures évolutions du kernel pour les conteneurs par Tycho Anderson.

Autres coups de cœur :

Il n’y a pas que les Black Belt Sessions qui méritent d’être citées. Ici, pas ou peu de technique, mais des slots qui nous ont marqués, de par leur pertinence, leur contenu ou la performance de leur speaker.

Pablo Lopez
Pablo est directeur technique chez Xebia et formateur Hadoop certifié par Cloudera au sein de Xebia Training .
Jean-Louis Rigau
Jean-Louis est expert DevOps chez Xebia. Il est également formateur au sein de Xebia Training .

Laisser un commentaire

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