A Bruxelles, les 3 et 4 février 2019, c’était le FOSDEM, à mes yeux la plus grande conférence, certainement au monde, autours des logiciels libres ! En plein hiver, avec une pluie mêlée à la neige, ça ne faisait pas envie et pourtant ! L’esprit est tellement libre que les organisateurs pensent qu’il y a de la place pour tout le monde et quand on y est on se rend compte que c’est bien vrai ! La manifestation a lieu au sein de l’Université Libre de Belgique, dans les amphis et partout où je suis passé, ils étaient pleins à craquer.
#FOSDEM 19. See you next time 💪 pic.twitter.com/fUgWsP0VZJ
— Joao Ubaldo (@mrjohnfive) February 3, 2019
Il y a beaucoup à apprendre en se rendant au FOSDEM, je crois qu’il y avait presque 50 tracks ! Sur deux jours, certes, mais avec des talks qui durent entre 30 minutes et 50 minutes, on a de quoi se repaître de libre et d’open source ! J’ai suivi les tracks autour de Java, des architectures distribuées, de l’infrastructure et du déploiement automatisé et un peu de MySQL.
Java et sécurité
Nicolas Fränkel nous a parlé de Java et de sécurité. Il est surtout revenu sur la nécessité à bien avoir en tête l’introspection de java (java.lang.reflection) dans tous ses développements. En effet, il est possible de modifier le byte code alors même que l’instance de la JVM qui supporte votre application est en cours d’exécution. Heureusement, il y a le Security Manager, qu’il convient toujours de configurer pour éviter le pire. Il apparaît qu’on ne le rappelle jamais assez surtout à l’ère du Cloud ! Le fournisseur d’infrastructure insiste donc de plus en plus sur cette sécurité qui doit être omniprésente si l’on ne veut pas se retrouver par une armée de machines zombies !
GraalVM
J’ai également assisté au talk de Christian Thalinger, qui est ingénieur dans la « VM team » chez Twitter. J’avais déjà vu la vidéo où il fait la promotion de GraalVM, sorte de JVM sous stéroïdes sorti par Oracle. Apparemment, le fait d’utiliser cette JVM améliore les performances de votre code avec très peu d’effort. GraalVM permet en effet de compiler votre développement en code natif, si bien qu’un code en NodeJS, Php, Python ou autre peut être transforms en un exécutable (.exe) qui n’a pas besoin de l’installation de son propre moteur d’exécution sur la machine où l’on doit lancer le programme ! Cet exécutable est souvent plus performant qu’une exécution normale !
Christian Thalinger ajoute que désormais à l’air du cloud, toute économie de ressource doit être considérée. Car son équipe, au-delà de la simple utilisation de GraalVM, a créé un ensemble d’outils : « Autotune ». Elle gagnerait quelque 20% de CPU ! A très grande échelle comme c’est le cas chez Twitter, imaginez ce que 20% de CPU en moins peut représenter en terme d’économie.
Multicloud
Maxime Guyot, nous a fait une démonstration Multicloud + CI/CD ! Celle-ci devait bien intégrer une bonne trentaine de fournisseurs de cloud, même si on pouvait avoir l’impression que c’était finalement pas si compliqué…. Toujours est-il qu’il a montré toute la chaîne depuis le partage du code, en passant par l’intégration continue jusqu’au déploiement continu sur des IAAS en OpenStack et Kubernetes comme orchestrateur. A chaque fois qu’il appelait sa page web le défi était d’afficher une page tantôt hébergée chez un fournisseur en Hollande, en France, ou ensuite en Allemagne. Tout son code est disponible sur son GitLab.
Cool multicloud demo from Maxime Guyot at #FOSDEM live deploy to 27 datacenters powered by #openstack and #kubernetes Cloud as cattles pic.twitter.com/hLvN3xfYYk
— Catalin Jora (@JoCatalin) February 2, 2019
Mgmt
James Shubin, nous a fait une présentation très énergique et un talk digne d’un concert des plus interactifs, où le chanteur a ce don de réveiller la foule avec ces questions réponses ! Tout a fonctionné comme un charme ! L’outil qu’il a écrit, Mgmt, a l’air tout à fait époustouflant ! La solution est telle qu’il l’a décrite : « réactive » ! En effet, parmi ses fonctionnalités intrinsèques, elle sait aisément tenir compte des ressources dont dispose à l’instant T le serveur sur lequel Mgmt pilote vos applications… Et donc avec un couple machine virtuelle plus Mgmt ou un couple qui associe Mgmt et Docker on peut très facilement mettre en place une architecture robuste ! Et là on n’a pas parlé de machinerie Kubernetes ou autre…
Linstor
Oui, allez, j’ai envie de parler d’une dernière solution qui m’a tapé dans l’oeil
Vous savez à quel point le stateful sur les orchestrateur est un véritable sujet ! Et je sais de quoi je parle, chez nous le mettre en œuvre a été tout sauf simple ! Je pense bien que nous avons fait une bonne dizaine de tentatives. Quoi qu’il en soit Linstor est une solution très crédible pour gérer les volumes de Kubernetes, OpenStack, Proxmox… C’est une solution bâtie sur DRDB ! DRDB qui a fait ses preuves il y a de nombreuses années en tant que couche pour faciliter la mise en œuvre de réplication de bases de données.
Il y a de plus en plus de solutions de stockage pour gérer le #stateful ! Comme #DRDB a déjà fait ses preuves, il y a de grandes chances que #Linstor en fasse autant #fosdem https://t.co/v5uG6LPZU4 #OpenStack #Kubernetes #Replication #Database #cloud pic.twitter.com/zHm7juLBVK
— Charly CLAIRMONT (@egwada) February 2, 2019
Allez à FOSDEM !
Comme vous l’aurez compris j’ai fait quelques sessions mais je ne ne vais sans doute pas toutes vous les raconter ! Je ne peux que vous recommander de venir assister à ce type d’événement (qui plus est celui-ci est gratuit), qui sont des valeurs sûres pour parler et faire parler du logiciel libre.
Merci à l’équipe organisatrice pour encore une belle année ! Et rendez-vous en 2020 !
Here's the slide#FOSDEM / #FOSDEM2019 pic.twitter.com/fzFsZnKzPe
— Ivan Vučica @ FOSDEM (@ivucica) February 3, 2019
Pour aller plus loin :
- Captations vidéos réalisées pendant le FOSDEM
- Real-time virtualization automation : Mgmt Config
- A Declarative API for Host Network Management
- LINSTOR® is an Open Source management tool designed to manage block storage devices for large Linux server clusters.
- TiDB is a distributed HTAP database compatible with the MySQL protocol
- JDK Flight Recorder
- GraalVM in 2018