Featured image of post BDX I/O 2025 - Récap de ma 10ème édition

BDX I/O 2025 - Récap de ma 10ème édition

Ecrit par ~ zwindler ~

10 ans déjà !

BDX I/O fêtait sa 10ème édition cette année, et c’était forcément une édition particulière pour moi. Après avoir co-organisé l’an dernier, cette année j’étais de nouveau un simple participant (même si j’ai aidé pour la relecture du CFP).

Voir le résultat incroyable, une fois de plus, de cette conf, et replonger dans les souvenirs en foulant les couloirs du Palais des congrès, je n’ai pu m’empêcher de ressentir un petit pincement au coeur de n’avoir pas été capable de participer plus activement, cette année.

Je vais donc devoir me contenter de mon habituel récap’ de conf !

Zébartyyyy

Keynote d’ouverture : Dix ans d’impact, 10 ans d’innovation

La keynote a célébré ces 10 années de BDX I/O, La technologie au service de la société.

10 éditions de BDX I/O, ça en fait des années d’évolutions techniques et technologiques. Et des émotions !

Coralie et Amélie étaient au top. J’ai reconnu toute l’équipe sur leurs photos d’eux enfants ;-)

Mention spéciale à La Grappe Numérique, qui regroupe toutes les associations et meetups bordelais, dont le CNCF Bordeaux que je co-organise. C’est important de souligner ce genre d’initiatives qui structurent la communauté tech locale !

Comment prédire l’imprévisible

Ludovic Cinquin, fondateur de WhereWeGo (stratégie IA), nous a proposé une réflexion sur le futur de la tech.

Citation de Bill Gates qui résume bien sa pensée :

“Nous surestimons le changement dans les 2 prochaines années, sous-estimons celui qui surviendra dans les 10 prochaines années”

Quelques points marquants :

  • Le web 3.0 a fait pschit, le quantum reste difficile à quantifier (ho ho ho)
  • “Software is eating the world” (Marc Andreessen) - toutes les activités humaines basculent dans le numérique. “But AI is going to eat software” - l’IA transforme maintenant le software lui-même.
  • HLMI (Human-Level Machine Intelligence, le terme pour ne pas dire AGI dans les milieux savants) : la question du moment où on aura des machines autonomes à moindre coût par rapport à un humain. Estimation 2045 ? Mais gros bond en avant dans les prévisions entre 2022 et 2023 quand on a demandé à 1800 chercheurs.
  • Il a mentionné le projet ai-2027.com et l’histoire d’OpenBrain AI - le débat éternel : Terminator vs IA for good.
  • Les limites de l’IA selon Eric Schmidt : consommation d’énergie. Pour 2027, +29 GW prévus aux US, ce qui va être compliqué (euphémisme). L’IA devrait induire à terme un doublement possible de la taille des datacenters, mais pour décarbonner les usages de l’humanité dans sa globalité, il va y avoir prédation entre les usages. Idem pour la disponibilité du cuivre nécessaire à l’électrification.

Pour finir, Ludovic a parlé de comment accompagner cette transition qui arrive (c’est son métier de consultant).

Ludovic a évoqué le framework Cynefin : complexe / compliqué / chaotique / simple, pour aider les décideurs à naviguer la complexité.

Il a cité “L’Agile” comme un outil très utilisé dans l’IT qui permet justement ça, et le travail par scénario. Ce qui est prévu n’arrivera pas forcément, mais la capacité d’adaptation est acquise. Exemple du TGV COVID : scénario qui avait déjà été réfléchi à la base pour les attentats, et qui a très bien marché pour la crise COVID.

Conclusion : nous avons tous une responsabilité sur les enjeux sociétaux.

De développeur à hacker : savoir casser c’est savoir protéger

Florian Toulemont (architecte solution, ethical hacker, 161ème sur root-me.org, excusez du peu !) nous a parlé de hacking éthique.

Sans même être allé sur son profil root-me (je n’avais pas de réseau sur le moment), ça se voyait que Florian savait de quoi il parlait. Notamment, entre 2 phrases de vulgarisation, il lâchait un terme très technique… un peu comme s’il avait envie d’expliquer en détail des trucs pointus mais que c’était pas prévu dans le talk 😉.

Je regrette juste que trop de temps ait été passé sur l’introduction. C’était très (très) vulgarisé, en partant vraiment de la base (de la base), et c’est dommage parce que l’intérêt du talk résidait vraiment dans la seconde partie qui a été rushée. Les exemples d’attaques classiques étaient super clair.

Quelques outils mentionnés que j’ai noté :

  • Analyse DAST : OWASP ZAP / Burp Suite
  • Ffuf : fuzzing web
  • Dirb : exploration web
  • SQLMap : exploitation SQL injection
  • Exegol : environnement de pentest dockerisé pré-configuré

Fun fact, j’ai d’ailleurs découvert Exegol hier pendant mon running en écoutant le podcast de mon éminent collègue Martial (Hack-n-speak) qui recevait Shutdown, son créateur.

Note à moi-même : voir le talk Réécrire le rôle : développeur à l’ère des LLM d’Horacio (que je n’ai pas eu le temps de voir), qui m’a été unanimement recommandé.

Oui, Kubernetes peut faire tourner vos applis Windows. Sérieusement.

Un talk que j’attendais depuis des années.

Nicolas Boisseau de chez Peaksys (la filiale IT de CDiscount) nous a démontré que oui, vraiment, Kubernetes supporte Windows.

Petit rappel historique :

  • Docker : 2013(ish)
  • Windows : des containers docker dans Windows en 2015
  • Kubernetes 1.14 : support en GA pour les nodes Windows en tant que worker Node (2019)
  • 1 an plus tard : GA sur AKS

Chez Peaksys, ils ont donc remplacé une architecture complexe à base d’AppServices Azure d’un côté (pour le legacy .NET Framework) et d’AKS (.NET Core) par tout sur AKS avec des workers Linux et Windows.

Tout au long de ce REX (efficace), j’ai découvert pas mal de choses sur les containers Windows.

D’abord, l’existence d’une fonction “Switch to Windows container” en un clic droit dans Docker Desktop ?!?

Ensuite, les containers Windows fonctionnent sur des concepts similaires à ceux pour Linux : le kernel Windows est partagé avec le container. Ça veut dire qu’on doit avoir un container Windows compatible avec l’OS Windows hôte.

Et ce n’est pas la seule contrainte :

  • sur Azure, Azure CNI obligatoire pour avoir des clusters multi-OS.
  • Attention à la taille des images : 10GB+ (nodes Windows préchargés avec les images de base)
  • Il faut bien sûr des licences Windows (sinon c’est pas rigolo) !
  • Et la gestion des logs complexe : tout ne sort pas dans stdout (events, logs fichiers)

Pour ce dernier point, Log Monitor, un outil microsoft, semble faire le café.

Mais ça fonctionne, ils ont leur prod dessus. GG

Crossplane : Déployer vos composants Cloud depuis K8s sans drift

À 14h50 en salle D, Vivien Ramahandry nous a présenté Crossplane.

Le problème de l’IaC classique : c’est cool, mais on ne gère pas le drift.

Arrive alors Crossplane : OSS depuis 2018, version 2.0 récemment, et Graduated CNCF (la veille de la conf !).

“Extend Kubernetes to manage any resource anywhere”

C’est particulièrement utile pour les ressources cloud. Le concept, tirer parti de la philosophie de Kubernetes “tout est une boucle de contrôle” et étendre les controllers Kubernetes built-in pour gérer n’importe quelle resource externe.

Vivien nous a ensuite prouvé ça avec une petite démo bien orchestrée :

  • Gestion d’un bucket S3 et des tags
  • Import de ressources existantes : mode “observe” dans un premier temps, puis géré par Crossplane

Ce point est très impressionnant quand on vient du monde TF. C’est BEAUCOUP plus simple que dans Terraform !

Live Coding d’algorithmes de génération de labyrinthes

Fabien Lamarque nous a proposé un live coding ludique et pédagogique.

Très chouette talk ! On a livecodé “tous ensemble” (et un peu réfléchi à plusieur quand il y avait des erreurs) 3 algorithmes pour générer des labyrinthes dits parfaits (sans boucle, ni portions inaccessibles), ainsi qu’un bout d’algo de Dijkstra pour calculer le plus long chemin.

Pas mal de fun facts, un peu de théorie, beaucoup de fun. C’était du Ruby, que Fabien nous a vendu comme “facile à lire pour ce genre d’exercice d’algorithmique” et j’ai trouvé ça très vrai.

Le genre de talk qui change d’air et qui me rappelle pourquoi j’aime coder !

Kyverno : la conformité dans votre cluster Kubernetes

Julien Canon nous a présenté Kyverno.

Petit aveu : j’ai participé à la relecture du CFP et quand j’ai vu cet abstract, j’ai pensé “ce talk, j’aurais aimé le donner moi-même”. Je suis donc super content que Julien ait été retenu, comme ça (égoïstement) je peux le voir 😄.

Contexte : Julien nous a présenté Kyverno à travers un REX, au sein d’une entreprise multi-région, assez mature sur l’infra/DevOps, avec observabilité et scaling automatique, mais de plus en plus de petits problèmes générant des incidents.

Problèmes récurrents :

  • Limits/requests pas définies ou mal définies
  • Ownership flou
  • apiVersions vieillissantes
  • Containers pas sécurisés
  • Images non sécurisées
  • Ressources non décommissionnées
  • Problèmes de nomenclature

Les problèmes classiques, j’ai envie de dire 😄. En tout cas, j’ai eu les mêmes.

Et il nous a montré avec une grosse démo que Kyverno peut nous aider à résoudre ces problèmes. Ou du moins, empêcher les gens de déployer, tant que ça n’est pas réglé :trollface:.

Dans les petits “trucs” au-delà des fonctionnalités de base, j’ai aimé que Julien aille un peu plus loin sur :

  • le flag --enablePolicyExceptions pour permettre de gérer des exceptions ponctuelles, mais attention : impact important sur les perfs.
  • la règle autogen.rules (cf doc) qui permet d’appliquer automatiquement les policies sur les pods aux objets qui créent des pods (Deployments, StatefulSets, etc.).
  • la mention du support de CEL (Common Expression Language) par Kyverno dans les versions récentes : précompilé, plus performant
  • le playground.kyverno.io pour visualiser l’impact de ses policies

J’ai aussi aimé qu’il donne des petits conseils pour débuter, notamment en commençant simplement par un audit Popeye pour aider à décider quelles règles ajouter en premier.

Quelques ref de “vieux” qui m’ont bien fait rire 😉

J’ai malheureusement dû partir avant la fin du talk, pour respecter mes obligations familiales 😅.

Networking et rencontres

Comme toujours, BDX I/O c’est aussi (surtout ?) les rencontres !

J’ai eu le plaisir de rencontrer Virginie “en vrai” pour la première fois, et de revoir Jean, Thomas, Ane, Horacio, Marina, Stéphane, Benoit, Loïc, Jean-Rémy, Christian, Julien (x2), Romane et bien sûr tous les membres de l’équipe d’orga (je ne vais pas citer tout le monde mais je pense à TOUS) et de la team Deezer (idem).

Vivement l’année prochaine :).

Licensed under CC BY-SA 4.0

Vous aimez ce blog ou cet article ? Partagez-le avec vos amis !   Twitter Linkedin email Facebook

Vous pouvez également vous abonner à la mailing list des articles ici

L'intégralité du contenu appartenant à Denis Germain (alias zwindler) présent sur ce blog, incluant les textes, le code, les images, les schémas et les supports de talks de conf, sont distribués sous la licence CC BY-SA 4.0.

Les autres contenus (thème du blog, police de caractères, logos d'entreprises, articles invités...) restent soumis à leur propre licence ou à défaut, au droit d'auteur. Plus d'informations dans les Mentions Légales

Généré avec Hugo
Thème Stack conçu par Jimmy