Electro Monkeys

Stef

Le podcast pour découvrir et comprendre les concepts et les technologies cloud natives ! Des interviews techniques hebdomadaires sur Kubernetes, les technologies cloud natives et la communauté open source.

Un plugin réseau est une brique cruciale au sein Kubernetes, car c'est grâce à lui qu'il est possible de créer un réseau au niveau du cluster. Depuis l'arrivée de la Container Network Interface, ou CNI pour faire court, il est très facile de brancher n'importe quel plugin qui réponde à cette interface ; et ces plugins sont légion ! Il y en a UN cependant qui se démarque du lot : Cilium. En effet, Cilium a pris le parti depuis le jour 1 d'utiliser eBPF pour gérer le réseau, la ou les autres reposent le plus souvent sur Netfilter. Or si Cilium a su tacler la concurrence en tirant le meilleur parti d'eBPF pour la mise à l'échelle, son voyage au cœur d'eBPF ne s'est pas arrêté là. L'Observabilité, les capacités de Service Mesh et de Sécurité sont autant d'aspects d'eBPF qui peuvent être intégrés à un network plugin. Pour nous dévoiler la magie qui se cache derrière eBPF, j'ai le plaisir de recevoir Robin Hahling, mon invite de l'episode 20 sur Hubble qui est Software Engineer pour Isovalent, la société derriere Cilium, et Raphaeël Pinson, Solutions Architect également chez Isovalent. Ensemble nous discutons bien évidemment de Cilium et d'eBPF, mais aussi de toutes les nouveautés qui ont été apportées ces deux dernières années a Cilium. Notes de l'épisode What’s new in Cilium 1.11? How Cilium Protects Against Common Network Attacks Isovalent announce Tetragon , an eBPF-based Security Observability & Runtime Enforcement Quelques nouvelles de My Little Team Les 50 meilleures équipes B Corp pour qui travailler en 2022
Épisode 115 - 08/02/2022
Les jeux rétro sont pour beaucoup un chouette souvenir d'enfance, que vous ayez été jeux d'arcade, console ou pc. Mais étrangement, ils ont survécu, ils ont passé l'épreuve du temps et ils sont toujours là, sur les consoles rétro, sur les Raspberry Pi ou qui sait ou encore ! Il y toujours autour d'eux une communauté de bidouilleurs passionnés qui les font revivre, presque intacts après toutes ces années. Aujourd'hui, j'ai le plaisir de recevoir David Hecq. David est le créateur de la très populaire chaîne Youtube Gunhed TV, mais aussi l'auteur des Chroniques de Gunhed, que vous pouvez retrouver sur Amazon. Une merveilleuse occasion de parler des jeux d'hier, d'aujourd'hui et de demain ! Notes de l'épisode Gunhed TV : https://youtube.com/c/GunhedTV Chroniques de Gunhed TV - Volume 1 : https://amzn.to/34JmCjv Au programme de ce livre damné : la terrible confrontation entre les firmesAtari, Mattel et Colecoà la fin des années 70 et qui s'est achevée avec le crash des jeux vidéo.Pourtant au départ, on y croyait en ces machines. Elles nous vendaient du rêve en pixels et nous promettaient mille et une merveilles vidéoludiques. On évoquera également la rocambolesque histoire duKonix Multi System, tout simplement un système d'arcade à domicile avec siège monté sur vérins. En lieu et place, on a eu droit à une explosion en plein vol, suivie d'une absorption par le trou noir de l'histoire des jeux vidéo où l'on a parfois la fâcheuse tendance de ne retenir que les succès. Malgré tout, derrière ces flamboyants échecs, il y a des hommes (et un peu de femmes) qui ont porté ces projets à bout de bras et qui a force de persévérance et de passion, ont réussi à les commercialiser. Vous en conviendrez, ces personnes méritent à minima qu'on raconte leur histoire... Chroniques de Gunhed TV - Volume 2 : https://amzn.to/35Y9LKP Au programme de ce second tome : laVectrex, l'O.V.N.I. des années 80, l'Amiga CD32et la mort (terrible) deCommodore, laJaguarou le dernier rugissement d'Atariet enfin,NEC PC-FX: la grande désillusion.
Peut-être ne nous en rendons-nous pas compte, mais aujourd'hui la plupart des outils SaaS que nous utilisons sont américains. Il n'y a évidemment aucun mal à cela, du moins de mon point de vue, mais qu'arriverait-il si pour une quelconque raison la France ou l'Europe n'étaient plus en bons termes avec les Etats-Unis ? Pourrions-nous toujours accéder non seulement à nos outils, mais également aux données qui y sont hébergées ? Ce sont ces réflexions qui ont amené Christophe Chaudier, mon invité du jour, à concevoir Froggit : un ensemble de services permettant d'héberger sa base de code de manière souveraine. Christophe, que j'ai déjà eu l'occasion de recevoir ici est un mentor DevOps, fondateur des compagnons du DevOps, podcasteur, youtubeur, j'en passe et dernièrement le créateur de Froggit dont il vient nous parler plus en détails. Notes de l'épisode Le Linkedin de Christophe : https://www.linkedin.com/in/cchaudier/ Le site de Froggit : http://froggit.fr/ Le concept de SaaS Libre : https://youtu.be/qTlqL89UmsQ La neutralité du Net s’effrite ! (embargo des US sur l'iran) :https://www.linkedin.com/feed/update/urn:li:activity:6579664951630196736/ L'article de Shahin Sorkh https://shahinsorkh.ir/2019/07/20/how-is-it-like-to-be-a-dev-in-iran Lydra : http://lydra.fr/ La chaîne YouTube des Compagnons du DevOps : https://www.youtube.com/c/LesCompagnonsduDevOps La chaîne YouTube sur l'entreprenariat de Christophe : https://www.youtube.com/channel/UCvZFN6J1okCiIG4LKIXqSpg Docusaurus : http://docusaurus.io/ Les Lives Docusaurus et GitLab pages : https://www.youtube.com/watch?v=OwXsEiQTdmo&list=PLR2-Y4yF_vcgK4BeImt4SUy7izAvYrMBX
Ces dernières années, l'infrastructure as code s'est largement démocratisée, portée notamment par l'adoption du cloud. Elle consiste à gérer une infrastructure uniquement à base de code, au lieu de le faire manuellement. Un des points clé de l'infrastructure as code est certainement qu'elle permet un passage à l'échelle, ce qui n'est pas possible avec des procédures manuelles. Aux vues de la taille de nos infrastructures actuelles, il est difficile de s'imaginer pouvoir faire l'impasse sur ces technologies. Pourtant l'infrastructure as code présente des faibles et il n'est pas toujours simple d'adresser tous les cas d'usage auxquels nous pouvons être confrontés. Doit-on mettre ça sur le compte de la jeunesse des outils ou sur leur mauvaise utilisation ? Séven Le Mesle, mon invité dans cet épisode, a son opinion sur la question, et a publié il y a quelque temps un article intitulé Pourquoi votre infrastructure-as-code ne tient pas ses promesses ? Séven est le président et cofondateur de WeScale, et ensemble nous parlons bien évidemment d'infrastructure as code, mais également des retours d'expérience qu'il a en la matière et qui l'ont conduit à écrire cet article. Notes de l'épisode Pourquoi votre infrastructure-as-code ne tient pas ses promesses ? https://blog.wescale.fr/2021/06/17/pourquoi-votre-infrastructure-as-code-ne-tient-pas-ses-promesses/ Infrastructure as Code’s Broken Promises: https://levelup.gitconnected.com/infrastructure-as-codes-broken-promises-4c9dc86f909c
S'il est vrai que le software mange le monde, il est tout aussi vrai que les APIs mangent le software. Les APIs font tourner le web, et ce n'est pas les exemples qui manquent de Facebook à Google en passant par Twitter ou Netflix, au point que c'est un sujet incontournable lorsqu'il s'agit de créer une application. Mais créer une API ne se fait pas sans beaucoup d'efforts, et parfois pas mal de douleur. En effet, au-delà du code qui est un sujet qui nous passionne tous, il y a d'abord un design ; l'implémentation ne vient qu'ensuite. Et dans ce domaine, les erreurs sont fréquentes, pénibles et ont même parfois des conséquences catastrophiques. Mon invité, Arnaud Lauret aka API Handyman, y consacre un blog et vient de publier un livre sur le sujet : le Design des Web APIs aux éditions Manning. Arnaud est Leader API et Architecture chez Natixis, et le moins que l'on puisse en dire, c'est qu'il a travaillé son sujet. Avec lui, je reviens sur ce qui fait une bonne API, mais nous parlons aussi de sécurité, de cycle de vie, et des erreurs qu'il est facile d'éviter quand on prend le temps de faire un bon design. Notes de l'épisode : Générer une documentation à partir d'OpenAPI : https://github.com/Redocly/redoc Akita est un outil vous permettant d'améliorer le développement de vos APIs, notamment en scannant le traffic entrant et sortant : https://www.akitasoftware.com/ Le blog d'Arnaud : http://apihandyman.io/ Bénéficiez de 37% de réduction sur The Design of Web APIs ou sur n'importe quel autre livre du catalogue de Manning en utilisant le promo code podelmonk21 : http://mng.bz/l2wB Pour gagner un exemplaire numérique de The Design of Web APIs, retweetez simplement le tweet qui mentionne cet épisode du postcast https://twitter.com/k8Monkeys avec un commentaire sur ce que vous en avez pensé ; le gagnant sera tiré au sort et contacté via Twitter
OpenShift est une plateforme de gestion du cycle de vie des applications créée par Red Hat. Depuis sa version 3, il s'appuie sur Kubernetes pour sa couche d'orchestration. Mais puisqu'OpenShift n'est pas simplement un orchestrateur de conteneurs, il embarque également un grand nombre de composants pour faciliter le développement d'applications, leur déploiement ou leur monitoring. Pour nous en parler plus en détail, je reçois Didier Wojciechowski et Madou Coulibaly. Tous deux travaillent chez Red Hat, où Didier est EMEA Principal Openshift Specialist Solutions Architect, et Madou Senior Specialist Solution Architect. Avec eux, je discute de la genèse d'OpenShift, des décisions stratégiques qui ont été prises pour son élaboration, ainsi que des composants qui le constituent aujourd'hui. Notes de l'épisode L'endroit où trouver les opérateurs de la communauté Kubernetes : https://operatorhub.io/ Red Hat OpenShift Container Storage : https://www.redhat.com/fr/technologies/cloud-computing/openshift-container-storage CodeReady Workspaces : https://developers.redhat.com/products/codeready-workspaces/overview Eclipse Che, l'IDE natif pour Kubernetes : https://www.eclipse.org/che/ Odo,: l'interface en ligne de commande (CLI)qui aide les développeurs à itérer sur leur code sur Red Hat OpenShift et Kubernetes : https://developers.redhat.com/products/odo/overview Thanos, le Prometheus en haute disponibilité : https://thanos.io/v0.10/thanos/getting-started.md/ Submariner permet de gérer la connectivité entre différents clusters Kubernetes : https://catalog.redhat.com/software/container-stacks/detail/5f0c67b7ce85fb9e399f3a12 Didier ne croyait pas si bien dire en parlant de Kubernetes ++, voici l'annonce d'OpenShift plus : https://www.openshift.com/blog/just-what-is-red-hat-openshift-platform-plus
Que connaissons-nous vraiment du mode de fonctionnement des applications que nous utilisons au quotidien. Est-ce nous qui leur accordons des droits sur nos données personnelles, ou elles qui nous privent de ces mêmes droits à leur égard ? Après tout, rares sont encore les applications qui aujourd'hui ne nous demandent pas notre consentement pour accéder à telle ou telle autre partie de notre vie privée. Il est difficile en effet, dans un secteur aussi innovant, de comprendre exactement comment nos données peuvent être utilisées, et dans quel contexte de sécurité. Doit-on compter sur la loi pour nous protéger des abus, ou doit-on s'en remettre à la morale ou à l'éthique d'une société, d'une équipe ou d'un individu ? Ces questions sont le lot quotidien de Marie-Jean Meurs et de Sébastien Mosser, qui travaillent tous deux sur une application médicale dans le domaine de la santé mentale. Marie-Jean est professeure au département de computer science de l'Université du Québec à Montréal où Sébastien est également professeur en ingénierie logicielle. Avec eux, je reviens sur le sujet épineux de la gestion de la donnée personnelle. Notes de l'épisode The Great Hack : https://fr.wikipedia.org/wiki/The_Great_Hack HumanIA : https://humania.uqam.ca/ La page de Sébastien Gambs, qui a une chaire de recherche au Canada en "Privacy-preserving and Ethical Analysis of Big Data” : https://sebastiengambs.openum.ca/ Marc-Olivier Killijian, professeur en sécurité logicielle à l'Université du Québec à Montréal : https://kirija.github.io/
Que ce soit au travers de Facebook, d'Amazon ou de Netflix, nos interactions avec les bases de données orientées graphe sont innombrables. Il faut dire que c'est un modèle de données particulièrement adapté à des cas d'usage aussi variés que les moteurs de recommandations ou à la détection de fraudes.Dans ce type de bases de données utilisant la théorie des graphes, les données sont stockées sous forme de nœuds et d'arcs. C'est grâce à ce type de représentation qu'il est possible de tirer de l'information non pas des données elles-mêmes, mais des relations qu'elles entretiennent les unes avec les autres.Pour mieux comprendre les bases de données graphes et la manière dont elles sont utilisées aujourd'hui, j'ai le plaisir de recevoir Arnaud Castelltort. Arnaud est Maître de conférences à Polytech Montpellier, et la personne la plus enthousiaste pour parler bases de données graphe que j'ai jamais rencontré.Notes de l'épisode :Graph Powered Machine Learning : https://www.manning.com/books/graph-powered-machine-learningLa base de donnée orientée graphe la plus célèbre : https://neo4j.com/Le site d'Open Cypher : http://www.opencypher.org/Neptune, la base de données orientée graphe d'AWS : https://aws.amazon.com/neptune/Apache Gremlin : https://tinkerpop.apache.org/gremlin.htmlSAP Hana : https://saphanajourney.com/hana-cloud/Orientdb : https://www.orientdb.org/Indradb : https://indradb.github.io/Arangodb : https://www.arangodb.com/Age : https://age.apache.org/Et quelques notes supplémentaires de la part d'Arnaud :Pour comparer des bases de données graphe, ce benchmark est pas mal: https://graphbenchmark.com/ + https://db-engines.com/en/ranking/graph+dbmsAutres bases que j'ai oublié d'évoqué: TigerGraph https://www.tigergraph.com/ (sur laquelle j'ai pas beaucoup d'information)Neo4j sandbox: https://neo4j.com/sandbox/Un livre chez Manning pour les bd graphes (explique bien l'utilisation de Gremlin): https://www.manning.com/books/graph-databases-in-actionUn livre gratuit (un peu dépassé mais pas mauvaise pour se donner une idée en feuilletant) sur les bases de données graphes (suffit de donner son email): https://neo4j.com/graph-databases-book/ c'est un O'Reilly Graph DatabasesBy Ian Robinson, Jim Webber and Emil EifremPrint Length: 224 pagesSupport the show (https://www.patreon.com/electromonkeys)
Épisode 62 - 12/01/2021
etcd est une base de données bien connue de toutes les équipes opérationnelles, puisqu’elle est au coeur de Kubernetes. Cependant, mis à part sa documentation en ligne, c’est une base de données sur laquelle il n’existe aucune littérature. Et c’est une chose que j’ai peine à comprendre pour un projet de cette importance qui a un tel impact sur notre quotidien.Par chance, nous ne sommes pas les seuls à devoir opérer etcd. Qui plus est, certains cloud providers l’utilisent à bien plus grande échelle que nous, ce qui est notamment le cas pour OVHcloud. Leur connaissance du modèle opérationnel d’etcd et leurs retours d’expérience nous sont d’une aide précieuse.Dans cet épisode, je reçois Pierre Zemb. Pierre est leader technique des systèmes et du stockage distribués chez OVHcloud, donc la personne idéale pour parler d’etcd. Dans cet échange, nous évoquons les bases de données de nouvelle génération et leur fonctionnement, les raisons pour lesquelles etcd a été choisie pour Kubernetes, mais aussi ses limites et ses alternatives.Notes de l’épisodeLes notes personnes de Pierre sur etcd : https://pierrezemb.fr/posts/notes-about-etcd/Les bases de données orientées colonnes : https://fr.wikipedia.org/wiki/Base_de_donn%C3%A9es_orient%C3%A9e_colonnesOLAP : https://fr.wikipedia.org/wiki/Traitement_analytique_en_ligneOLTP : https://fr.wikipedia.org/wiki/Traitement_transactionnel_en_ligneWhite Paper sur Google Spanner : https://static.googleusercontent.com/media/research.google.com/en//pubs/archive/46103.pdfWhite Paper de Google sur BigTable : https://static.googleusercontent.com/media/research.google.com/en//archive/bigtable-osdi06.pdfLe site officiel de CoakcroachDB : https://www.cockroachlabs.com/Le site officiel de TiKV : https://tikv.org/Le site officiel d’etcd: https://etcd.io/Raft : https://raft.github.io/Raft un consensus distribué compréhensible : http://thesecretlivesofdata.com/raft/Raft lab : https://pdos.csail.mit.edu/6.824/labs/lab-raft.htmlPaxos vs Raft : https://www.youtube.com/watch?v=0K6kt39wyH0Documentation en ligne d’etcd : https://etcd.io/docs/v3.4.0/rfc/v3api/Interagir avec etcd : https://etcd.io/docs/v3.4.0/dev-guide/interacting_v3/etcd par rapport aux autres bases de données clés-valeurs : https://etcd.io/docs/v3.4.0/learning/why/Le site officiel de grpc : https://grpc.io/Les protobufs : https://developers.google.com/protocol-buffersSupport the show (https://www.patreon.com/electromonkeys)
Container Security est un livre écrit par Liz Rice et paru aux éditions O'Reilly en avril 2020. Je l'attendais avec impatience, et je l'ai dévoré dès sa sortie. Il est bourré d'informations utiles. Après un rappel des rudiments de Linux, tous ce qu'il y a à connaître sur la sécurité des conteneurs y est abordé, de l'isolation, au cycle de vie des images jusqu'à la gestion des secrets.En bon podcaster, je me suis tout de suite jeté sur Twitter en espérant trouver dans mon réseau quelqu'un pour parler de la sécurité des conteneurs et des différents aspects que j'avais pu découvrir au travers de ce livre. Il se trouve que c'est Liz elle-même qui m'a répondu, et a accepté sans hésiter d'être mon invitée, même si elle ne se sentait pas totalement en confiance avec son français. Et je tiens d'ailleurs à la remercier très chaleureusement d'avoir fait cet effort, car nous avons bien plus souvent l'occasion de voir des français répondre à des interviews en anglais, que l'inverse. D'ailleurs, c'est son tout premier podcast francophone.A-t-on encore besoin de présenter Liz Rice ? Liz est VP Open Source Engineering chez Aqua Security, mais elle est également Présidente du Comité de Contrôle Technique à la CNCF, et j'imagine que beaucoup d'entre vous ont déjà eu l'occasion de la croiser dans une KubeCon ou une autre. Ensemble nous discutons de la sécurité des conteneurs, en prenant comme point de départ le livre qu'elle vient de publier.Notes de l'épisodeAqua Starboard https://github.com/aquasecurity/starboardSupport the show (https://www.patreon.com/electromonkeys)
Parmi l'arsenal des différents outils mis à notre disposition pour notre veille technologique, il y a le podcast. Bien évidemment, je ne serais pas là si je n'en étais pas persuadé, et peut-être que vous non plus. Mais qui sont ces fous qui se mettent chaque semaine derrière un micro pour créer des contenus toujours nouveaux ? Qu'est-ce qui les fait avancer ? Où vont-ils chercher leurs idées ?Chaque podcast à sa propre identité et son propre style, non seulement au travers de ses thématiques, mais aussi par la personnalité de celui qui l'anime. Bruno Soulez, que vous connaissez peut-être déjà, est le créateur de If This Then Dev, un podcast que je suis depuis ses débuts, et qui m'a décidé à me lancer à créer mon propre show.Si vous êtes curieux de partager l'espace d'une heure l'intimité d'un podcaster, vous êtes les bienvenus ! Vous y apprendrez comment IfTTD a été créé, quels sujets tiennent vraiment à coeur à Bruno, ce qu'il espère transmettre au travers de ses épisodes, et surtout la réponse à cette grande question : pourquoi ne mange-t-il que des yaourts qu'il fabrique lui-même ?Notes de l'épisodeIf This Then Dev https://ifttd.io/Cosa Vostra https://www.cosavostra.com/Big Bang Media https://www.facebook.com/BigBangMediaIncubateur/Génération Do It Yourself https://www.gdiy.fr/2h de perdues https://www.2hdp.fr/No Limit Sécu https://www.nolimitsecu.fr/Les Cast Codeurs https://lescastcodeurs.com/The Mature Dev https://www.themature.dev/Tech Rocks https://www.tech.rocks/Artisan Développeur https://artisandeveloppeur.fr/Episode #5 Comment regarder Netflix depuis l'espace ? https://ifttd.io/5-raphael-goldwaser/Episode #10 Coder pour guérir les autres https://ifttd.io/10-coder-pour-guerir-les-autres-dominique-sauquet/Episode #14 Coder peu, coder mieux https://ifttd.io/14-coder-peu-coder-mieux-dimitri-baeli/Episode #20 beta.gouv quand l'état se met en mode start-up https://ifttd.io/20-beta-gouv-quand-letat-se-met-en-mode-start-up-julien-dauphant/Episode #21 Une organisation libre où prime innovation et bonheur https://ifttd.io/21-une-organisation-libre-ou-prime-innovation-et-bonheur-quentin-adam/Episode  #46 De l'ordinateur beige au numérique vert https://ifttd.io/46-de-lordinateur-beige-au-numerique-vert-frederic-bordage/Episode #52 Le veilleur de nuit https://ifttd.io/52-le-veilleur-de-nuit/Support the show (https://www.patreon.com/electromonkeys)
Java est un langage populaire apprécié de nombreux développeurs. Certes, il est là depuis des lustres, et certains pourraient le penser obsolète face à Go ou à Rust. Pourtant, bien loin de cette hype, Java continue à faire son chemin et à se réinventer lui-même jour après jour.Pour évoquer les défis de Java face au cloud natif, j'ai déjà eu l'occasion de parler de Spring et de GraalVM native image. Cette fois, la discussion se porte sur Quarkus, que Red Hat décrit comme étant un framework Java natif pour Kubernetes, et Eclipse Vert.x une librairie Java qui facilite l'écriture de micro services.Pour évoquer ces sujets, je n'ai un, mais deux invités : Thomas Segismont et Julien Ponge. Thomas et Julien travaillent tous deux pour Red Hat, où ils sont respectivement senior software engineer et principal software engineer. Ils nous emmènent à la découverte de Quarkus et de Vert.x sur fond de GraalVM.Notes de l'épisodeVert.x in Action, Manning Publications : https://www.manning.com/books/vertx-in-action?a_aid=vertx-in-action&a_bid=22152024Le dev mode Quarkus:est supporte la plupart des protocoles, dont les outils en ligne de commande, gRPC et Kafka (update depuis l'enregistrement de l'épisode)Red Hat supporte activement Quarkus : https://quarkus.io/support/Pour ce qui concerne le mode natif, du point de vue du support Red Hat c'est Tech Preview pour l'instant (best effort). Mais la prochaine version produit devrait venir avec le support de Mandrel (https://github.com/graalvm/mandrel). Mandrel est un sous-projet de Graal qui fournit un compilateur native-image taillé pour Quarkus.Mandrel (https://github.com/graalvm/mandrel) est supporté par Red HatLa roadmap Vert.x : https://github.com/vert-x3/wiki/wiki/Vert.x-Roadmap#vertx-4La roadmap Quarkus :  https://github.com/orgs/quarkusio/projects/5Support the show (https://www.patreon.com/electromonkeys)
Les conteneurs nous permettent plus que jamais d'accélérer le déploiement de nos applications. Elles sont désormais portables, prêtes à l'emploi et il est possible d'en exécuter des centaines, voire des milliers, sur une même machine. Mais il y a un revers à la médaille : comment être sûr qu'une application n'exécute que le code pour lequel elle est conçue ? Comment repérer un shell malicieux lancé par un tier ? Plus la densité de conteneurs sur un noeud augmente, et plus cette tâche pourrait sembler se complexifier.Bien sûr, il existe depuis longtemps des outils pour nous protéger, comme SELinux, AppArmor ou Seccomp. Ils ne nous mettent pourtant pas à l'abri d'une règle mal écrite ou trop laxiste. Alors comment s'assurer que la règle définie ne contiennent pas de faille qui permette de s'en échapper ? La réponse semble évidente : par l'audit nos systèmes. Et Falco est justement un outil nous permettant de nous acquitter facilement de cette tâche.Dans cet épisode, je reçois Thomas Labarussias. Thomas est Site Reliability Engineer pour Qonto, mais il est avant tout le mainteneur de Falco Sidekick. Avec lui, je discute de Falco et de ce qu'il apporte en terme de sécurité à nos applications, mais aussi de Sidekick, de ses cas d'usage, et des raisons qui ont poussé Thomas à s'investir dans un tel projet.Notes de l'épisodeCaptations et les compte-rendus de la communauté de Falco : https://github.com/falcosecurity/communitySupport the show (https://www.patreon.com/electromonkeys)
La sécurité est un aspect fondamental et pourtant souvent négligé de nos systèmes d'information. Pourquoi ? Qui n'a pas trouvé les exploits de Mr Robot palpitants ?... Alors qu'est-ce qui cloche ?  Serait-ce parce que cette fois nous ne sommes pas du même côté de la barrière ? Probablement. Avoir une bonne hygiène de sécurité demande beaucoup d'efforts, de temps et de connaissances. Et avec tout ce qui "shift left" ces dernières années, il est difficile, mais vraiment difficile, de trouver le temps nécessaire.Cependant, nous ne pouvons pas nous permettre de passer au travers ou de simplement l'ignorer. J'ai donc décidé de faire une série sur les différents aspects de la sécurité, en commençant tout naturellement par la chaîne d'approvisionnement. Le code est la base de code sont aujourd'hui au coeur de toute entreprise technologique, et même les équipes d'infrastructure n'y échappent plus depuis l'avènement de l'infrastructure as code. Mais alors quels sont les problèmes soulevés, quelles solutions y apporter et avec quels outils ?Dans cet épisode, j'ai le plaisir de recevoir Maya Kaczorowski. Maya est Product Manager et Software Supply Chain Security pour Github, aussi elle est particulièrement bien placée pour répondre à mes nombreuses questions sur la chaîne d'approvisionnement, l'open source, et la sécurité. Car, au cas où j'aurais oublié de le mentionner, dans toute cette histoire, il est aussi largement question d'open source, que nous pouvons maintenant sans crainte considérer comme une des pierres angulaires de tout système d'information. Vous voilà prévenus, c'est parti !Support the show (https://www.patreon.com/electromonkeys)
Le DevOps et un mouvement et une pratique visant à l'unification du développement et de l'administration des systèmes. Sous cette définition simple en apparence se cache en réalité un monde d'inconnues, ce qui ne rend pas le mouvement facilement accessible. Qui doit y participer ? En quoi consiste cette unification ? Est-ce le rôle d'une personne, d'une équipe ou de tout une organisation. Comment mettre en place le DevOps et avec quels outils ?Pourtant, beaucoup d'entreprises ont dores et déjà adopté les concepts du DevOps, les ont mis en pratique et sont ressorties grandies de cette transformation, et plus à même de faire face aux challenges auxquels l'IT est confrontée aujourd'hui. Alors malgré le flou artistique que semble représenter le DevOps, par où commencer pour le mettre en place, et comment le structurer pour en retirer tous les bénéfices attendus ?Pour répondre à mes très nombreuses questions sur le sujet, je suis allé voir mon confrère podcaster Christophe Chaudier. Car Christophe n'est pas seulement un podcaster que j'apprécie particulièrement, il est aussi consultant DevOps et co-fondateur de Lydra, un collectif de consultants indépendants. Avec lui, je discute de la pratique du DevOps, de ses bénéfice, de sa culture et de ses enjeux.Notes de l'épisodeLes Compagnons du DevOps : https://lydra.fr/pourquoi-les-compagnons-du-devops/Radio Devops (le podcast) : https://lydra.fr/radio-devops/Le rêve du dragon : https://lydra.fr/rdo-8-comment-partager-et-diffuser-la-culture-devops/Les bénéfices du DevOps : https://lydra.fr/devops-cest-bien-beau-mais-on-y-gagne-quoi/L'egrégore : https://fr.wikipedia.org/wiki/%C3%89gr%C3%A9goreLe livre Découvrir DevOps : https://www.dunod.com/sciences-techniques/decouvrir-devops-essentiel-pour-tous-metiers-0The Phoenix Project : https://www.goodreads.com/book/show/17255186-the-phoenix-projectLa première formation DevOps de Christophe : https://www.compagnons-devops.fr/devops-mindsetSupport the show (https://www.patreon.com/electromonkeys)
Gordon Moore, Nolan Bushnell, Vinton Cerf, Tim Bernes-Lee, Steve Wozniak, qui n'a pas un jour entendu l'histoire d'un de ces grands bidouilleurs à l'origine des microprocesseurs, des jeux vidéo, d'Internet, du Web ou de l'ordinateur individuel ? Mais la célébrité n'était pas le but, et aucune de toutes ces belles choses n'est l'oeuvre d'une seule personne.Car le but du maker n'est pas nécessairement de créer quelque chose d'utile, mais de créer, tout simplement. Comprendre, apprendre, essayer, se tromper, recommencer, réussir parfois, partager, c'est là tout l'univers des hackers. Ai-je oublié de mentionner un sens de l'humour potache qui est souvent leur signature ?Dans cet épisode, j'ai le plaisir de recevoir Sébastien Nedjar. Sébastien est maître de conférence à l'université d'Aix-Marseille, et il est le fondateur du FabLab du pays d'Aix. Avec lui je pars à la découverte des bidouilleurs, des célèbres FabLabs, et d'un projet bien plus ambitieux pour le monde de l'éducation : Let's Steam.Notes de l'épisodeLe FabLab d'Aix en Provence : https://labaixbidouille.com/Nosbridge San Francisco : https://www.noisebridge.net/wiki/Noisebridgeles innovateurs  de Walter Isaacson : https://www.livredepoche.com/livre/les-innovateurs-9782253194453L'Open Bidouille Camp : https://openbidouille.net/Maker Faire : https://makerfaire.com/Le Souk des Sciences : https://www.univ-amu.fr/en/public/science-soukCoding Goûter : https://codinggouter.org/STMicroelectronics : https://www.st.com/content/st_com/en.htmlLe projet Let's Steam : http://www.lets-steam.eu/Support the show (https://www.patreon.com/electromonkeys)
Redhat est une société qui a été fondée en 1993 et qui est la première a avoir créé un modèle économique viable en fournissant du support sur des softwares open source. En commençant par une distribution Linux, puis avec JBoss, Openstack, Ceph, Keycloak, et plus récemment Openshift, Redhat est aujourd'hui l'un des plus gros contributeur à l'open source.Cependant, contribuer ne signifie pas uniquement écrire du code, mais aussi d'être à l'écoute de ses utilisateurs, de comprendre les problèmes qu'ils cherchent à résoudre, et les difficultés auxquelles ils sont confrontés. A cette fin, Redhat a besoin de maintenir un lien étroit avec les développeurs.C'est pour cette raison que le rôle de developer advocate a fait son apparition. Un developer advocate est lui-même un ingénieur software qui trouve tout autant de plaisir à écrire du code qu'à échanger avec sa communauté, que ce soit au travers de blogs, de meetups ou de conférences.Dans cet épisode, j'ai le plaisir de recevoir Sébastien Blanc. Sébastien est directeur de l'expérience utilisateur pour Redhat, et il nous explique les tenants et les aboutissants d'une profession encore jeune et qui pourrait bien faire naître des vocations !Notes de l'épisodeLes dessous de l’organisation d’une conférence avec Pierre-Antoine Grégoire et Gildas Cuisinier : https://electro-monkeys.fr/?p=294Apprendre Kubernetes avec Jérôme Petazzoni : https://electro-monkeys.fr/?p=217Le refactoring le plus difficile de ma carrière - Jérôme Petazzoni : https://www.youtube.com/watch?v=fu7Tsv5qPGQ&t=118s&index=10&list=PLhuKb8VM9ELFxHghhttrTef-Z4Fxj4ihVSupport the show (https://www.patreon.com/electromonkeys)
Toutes les ressources de Kubernetes peuvent être considérées comme des objects accessibles au travers d'une API et dont l'état est maintenu par un contrôleur. Lorsque vous créez un déploiement par exemple, c'est au contrôleur de s'assurer que l'état que vous désirez est celui présent dans le cluster. Mais Kubernetes n'a qu'un nombre limité d'objets, comme les pods, les déploiements ou les statefulsets. Cependant, Kubernetes nous permet d'étendre cette API en créant de nouveaux objets au travers de ressources personnalisées dont l'état devra être maintenu par un contrôleur dédié. Ces nouveau objets vont par exemple vous permettre de déployer un cluster Kafka ou Elastic dans Kubernetes.Mais en plus, vous pouvez également implémenter un savoir faire opérationnel dans ces contrôleurs, et leur donner la possibilité d'agir en autonomie en réaction à un évènement, comme la création d'un nouveau cluster Kafka, la perte d'un noeud du cluster, ou une demande de backup. Un contrôleur doté d'une logique opérationnelle est appelé un opérateur. Et il existe différents frameworks pour en faciliter la création.Dans cet épisode, j'ai le plaisir de recevoir Denis Jannot. Denis est sales engineer pour D2iQ, anciennement connu en tant que Mesosphere, et il nous explique les problématiques des différents frameworks, et pourquoi D2iQ a fait le choix de créer KUDO, un framework destiné à faciliter la création d'opérateurs.Notes de l'épisodeLe site de KUDO : https://kudo.dev/L'opérateur KUDO sur Github : https://github.com/kudobuilder/kudoLes opérateurs développés pour KUDO : https://github.com/kudobuilder/operatorsSupport the show (https://www.patreon.com/electromonkeys)
La résilience applicative est un sujet complexe, car elle questionne aussi bien le code d'une application, son architecture, que l'infrastructure sur laquelle celle-ci doit tourner. Chaque composant qui entre en jeu peut avoir ses faiblesses, faiblesses qui nous sont souvent révélées lorsque ce composant est mis a rude épreuve, comme par exemple lorsqu'il est soumis à un pic de charge soudain.Choisir le lieu où le code est exécuté est donc aussi critique que d'avoir un code de qualité, et si une dépendance applicative mal gérée peut avoir un impact négatif sur une application, c'est tout aussi vrai pour une dépendance d'infrastructure, qu'il s'agisse d'un DNS, d'un Load Balancer, du cache, etc. Chacun doit être évalué et rigoureusement choisi en fonction du cas d'usage.Dans cet épisode j'ai le plaisir de recevoir Christopher Maneu. Christopher est developer advocate pour Microsoft où il est en charge d'accompagner les startups dans leur réussite technologique, et il nous brosse un tableau d'ensemble des fragilités méconnues des pièces d'infrastructure que nous utilisons quotidiennement sans nécessairement nous poser de question à leur sujet.Notes de l'épisodeLoad.io : http://findresultsonline.com/Apache JMeter : https://jmeter.apache.org/La documentation Microsoft : https://docs.microsoft.com/fr-fr/Designing Distributed Systems : https://azure.microsoft.com/en-us/resources/designing-distributed-systems/Scalabilty Rules : http://scalabilityrules.com/Support the show (https://www.patreon.com/electromonkeys)
Depuis ses origines, le cloud a pour vocation de faciliter l'expérience des développeurs en leur permettant de déployer leurs applications simplement et en gérant pour eux la complexité du run. Quand nous pensons à cette simplicité, Heroku, Cloud Foundry ou Google App Engine nous viennent directement à l'esprit. Mais le cloud a un autre visage, composé d'instances de machines virtuelles, de VPC, de firewalls et de load balancers. Ces composants sont généralement complexes et ont souvent tendance a rebuter le premier développeur venu.C'est pour cette raison que les conteneurs ont pris un tel essor ces dernières années : ils permettent aux développeurs de déployer rapidement leurs applications en s'abstrayant de la complexité de l'infrastructure. Cependant, pour gérer ces conteneurs, il faut un orchestrateur, et cet orchestrateur, c'est aujourd'hui Kubernetes. Et Kubernetes est lui aussi une pièce d'infrastructure que les développeurs ne souhaitent pas gérer. C'est pourquoi Google a lancé Cloud Run : il réuni à lui seul la simplicité d'App Engine avec la flexibilité qu'offre les conteneurs. Dans cet épisode, j'ai le plaisir de recevoir Steren Giannini. Steren est product manager pour Google Cloud Platform, et il a eu la chance de travailler aussi bien sur App Engine que sur Cloud Run. Avec lui, nous allons découvrir les défis que Cloud Run vient relever et pourquoi il constitue la plateforme idéale pour déployer vos applications.Support the show (https://www.patreon.com/electromonkeys)
Quel niveau d'isolation offre la conteneurisation ? Le marketing qui a eu lieu autour de Docker dès 2013 laissait entendre, pour simplifier les choses, qu'un conteneur était comparable à une machine virtuelle, mais en plus léger. Or du point de vue de la sécurité, il n'en est absolument rien : les conteneurs partagent tous le noyau de leur hôte, et sont principalement isolés au travers des namespaces et des cgroups, tandis que les machines virtuelles elles, sont isolées grâce à des technologies de virtualisation matérielle.Les risques liés à la faiblesse de cette isolation a pu ralentir l'adoption des conteneurs par certaines compagnies, les privant par là même des fabuleux atouts qu'apporte Kubernetes. Pourtant, dès 2015, hyper d'un côté et Intel de l'autre avaient commencé à travailler sur cette problématique pour tenter d'apporter une solution qui serait le meilleur des deux mondes. Ces projets ont par la suite fusionné pour n'en donner qu'un seul : les Kata Containers, qui sont aujourd'hui hébergés par l'Openstack foundation.Dans cet épisode, j'ai le plaisir de recevoir Samuel Ortiz. Samuel est principal engineer pour Intel, et il est l'un des contributeurs au projet Kata Containers, ainsi qu'à Rust-vmm qui est au coeur des micro VM telles que Amazon Firecracker. Avec lui nous allons découvrir ce que sont les Kata Containers ainsi que Rust-vmm, et discuter du modèle de sécurité qu'ils sont à même de nous apporter. Support the show (https://www.patreon.com/electromonkeys)
Un concept est parfois beaucoup plus clair lorsqu'il vient accompagné d'un schéma pour l'illustrer ; un pictogramme par exemple est beaucoup plus efficace pour nous avertir de l'éventualité d'un danger que ne le ferait un long texte explicatif. Qui plus est, la représentation visuelle d'un concept nous permet de nous en souvenir durablement, car nous en gardons une image mentale simple et facile à retenir.Cependant, créer ce dessin, ce schéma, cette représentation ou ce pictogramme n'a rien d'évident. Qui ne s'est jamais retrouvé devant un tableau blanc à faire des lignes, des ronds et des carrés sans pour autant réussir à rendre plus clair l'idée qu'il était en train d'exprimer ? D'ailleurs, qui se souvient jamais d'un schéma composé de triangles et de carrés ? Marquer les esprits est un art, d'autant plus délicat que les concepts sont plus abstraits.Dans cet épisode, j'ai le plaisir de recevoir Aurélie Vache. Aurélie est développeuse pour Continental, mais elle est avant tout l'auteur de sketch notes sur Kubernetes et Istio qu'elle a publié originellement sur Twitter avant de les regrouper sous forme de pdf sur Gumroad. Avec elle, nous allons en apprendre un peu plus sur la genèse de ce projet un peu fou dans lequel elle a rendu des pods semblables à des pokeballs !Notes de l'épisodeUnderstanding Kubernetes in a visual way (120 pages), livre illustré disponible sur Gumroad a prix libre : https://gumroad.com/aurelievache#uCxcrLes Sketch Notes sur Istio : https://dev.to/aurelievache/understanding-istio-part-1-istio-components-4ik5Support the show (https://www.patreon.com/electromonkeys)
Épisode 23 - 23/06/2020
Le message queue est aujourd'hui au coeur de toutes nos chères applications en micro services, permettant ainsi à chaque service de s'exécuter en toute autonomie sans être couplé à son voisin. Mais ce n'est pas son seul cas d'usage, loin s'en faut, tant le monde d'aujourd'hui tourne autour des évènements.Or quand on pense message queue, bien souvent on pense à Kafka, ou peut-être aussi à RabbitMQ ou SQS. Mais connaissez-vous NATS ? NATS est un projet open source qui a maintenant plus de 10 ans, et qui depuis longtemps prouvé sa robustesse dans des produits comme Pivotal Container Service, entre autres. Par ailleurs, NATS est aujourd'hui hébergé par la CNCF, ce qui est, de mon point de vue, un gage de qualité indéniable.Dans cet épisode, j'ai le plaisir d'accueillir Ivan Kozlovic. Ivan est ingénieur software chez Synadia, la société qui maintient et dirige le développement de NATS. Avec lui, nous allons en apprendre un peu plus sur le message queuing, et des challenges que NATS relève dans ce domaine.Notes de l'épisodeSynadia: https://synadia.com/NATS.io : https://nats.io/Le repository GitHub : https://github.com/nats-ioLa chaîne Youtube de NATS : https://www.youtube.com/c/nats_messaging/videosUne video décrivant le cas d'utilisation de NATS par une compagnie d'électricité : https://youtu.be/YB-zPHxrJ6k?t=979Practical NATS : https://www.amazon.fr/Practical-NATS-Beginner-Pro-English-ebook/dp/B07DLTN6PK/ref=sr_1_1Support the show (https://www.patreon.com/electromonkeys)
Au royaume des conteneurs, la Registry est reine. Mais y prête-t-on jamais assez d'importance ? Elle pourrait être un goulot d'étranglement, un point particulièrement sensible de notre sécurité, et bien d'autres choses qui nous laisse à penser qu'elle est bien plus qu'une simple commodité.Ces dernières années, le projet Harbor, lancé par VMware puis poussé dans l'open source et finalement recueilli par la CNCF connait un véritable engouement. Pourquoi ? Parce qu'au travers de son interface accueillante, Harbor nous offre un monde de possibilités. RBAC, scan de vulnérabilités, chartmuseum et j'en passe, aucune fonctionnalité ne semble lui faire défaut. Mais de grands pouvoir implique de grandes responsabilités, et Harbor peut s'avérer un projet plus difficile à opérer qu'on ne le pense.C'est pourquoi depuis quelque temps, une équipe d'OVHCloud s'est penchée sur la création d'un opérateur en mesure de gérer aussi bien l'installation que le cycle de vie d'Harbor. Dans cette épisode, je reçois Pierre Péronnet et Maxime Hurtrel. Pierre est le principal mainteneur de l'opérateur Harbor, et Maxime product manager, et tous deux nous viennent tout droit d'OVHCloud. Avec eux, nous allons en apprendre un peu plus sur les challenges à relever pour créer un opérateur autour du projet Harbor.Sujets évoqués pendant l’épisodeL’opérateur Harbor sur Github : https://github.com/goharbor/harbor-operatorTrivy : https://github.com/aquasecurity/trivyOperator SDK : https://github.com/operator-framework/operator-sdkKubebuilder : https://github.com/kubernetes-sigs/kubebuilderLe Gitter d’OVH Registry : https://gitter.im/ovh/container-registryWebinar “L’opérateur Harbor, une nécessité pour certains qui profitera à tous” : https://www.youtube.com/watch?v=uEjOflud8V4Electro Monkeys PodcastSupport the show (https://www.patreon.com/electromonkeys)
A l'ouest de l'ouest vivait un type, un type dont je vais vous conter l'histoire, un type qui s'appelait Jérôme Petazzoni. Parce que, ne vous imaginez pas que Kubernetes s'est fait en un jour. Avant qu'on parle de Kubernetes, on a d'abord beaucoup parlé de Docker, et Docker, c'est quoi Docker ? Et avant de comprendre Kubernetes, il faut déjà comprendre les conteneurs. Et pour nous apprendre les conteneurs, et Kubernetes, de temps en temps y a un homme, et c'est de Jérôme dont je parle là, de temps en temps y a un homme, enfin, un homme qui est exactement à sa place, qui colle parfaitement dans le tableau, comme Jérôme avec Kubernetes.Dans cet épisode, je reçois Jérôme Petazzoni. Jérôme a travaillé pendant plus de huit ans pour Docker où il a acquis une solide réputation de speaker international. Il est également le cofondateur de Enix France, et s'est lancé depuis près de deux ans dans la formation et le conseil sur les conteneurs et Kubernetes au travers de sa société Tiny Shell Script LLC. Il vient aujourd'hui partager avec nous son expérience de formateur et vient nous en dire un peu plus sur le parcours pas si difficile que ça de l'apprentissage de Kubernetes.Sujets évoqués pendant l’épisodeRetrouvez Tiny Shell Script LLC sur https://tinyshellscript.com/Kubernetes the Very Hard Way de Laurent Bernaille : https://www.usenix.org/conference/lisa19/presentation/bernailleVous pouvez suivre Laurent Bernaille sur Twitter : https://twitter.com/lbernailElectro Monkeys PodcastSupport the show (https://www.patreon.com/electromonkeys)