Highlights FOSDEM 2023; Open Source bij onze onderburen



In het weekend van 4 en 5 februari zijn we met een aantal collega’s naar FOSDEM 2023 geweest. FOSDEM (Free and Open Source Software Developers’ European Meeting) is een jaarlijks evenement in Brussel, België. Het is een gratis en niet-commerciële conferentie die een platform biedt voor open source-ontwikkelaars om elkaar te ontmoeten, te netwerken en samen te werken aan de ontwikkeling van vrije en open source-software. En met meer dan 700 sessies konden wij ons geluk niet op!
(F)OSDEM
Het begon allemaal in het jaar 2000 toen Raphael Bauduin, een fan van de Linux-beweging in België, een kleine bijeenkomst organiseerde voor ontwikkelaars van Open Source software. Hij noemde het ‘Open Source Developers’ European Meeting’ (OSDEM). Voor het tweede jaar werd OSDEM omgedoopt tot FOSDEM. En nu, vele jaren later, is het uitgegroeid tot het evenement dat het nu is. FOSDEM probeert nu een breed spectrum van vrije en open source softwareprojecten te dekken en biedt een platform voor mensen om samen te werken.
Pre-Conference
Op vrijdag zijn wij met een aantal collega’s naar Brussel afgereisd. Vervolgens wat gegeten en afgesproken om elkaar te ontmoeten in het Delirium Café. Een druk bezochte steeg met diverse Delirium kroegen. Na een aantal Belgische biertjes gingen wij weer op tijd terug naar het hotel en zaten we om 7.30 uur met z’n allen fris en fruitig aan het ontbijt om vervolgens naar het Université Libre de Bruxelles, of te wel, de Vrije Universiteit van Brussel af te reizen.

Zaterdag – 4 februari
En toen was het daadwerkelijk zover. FOSDEM 2023 begon met een keynote over het 25-jarig bestaan van Open Source. Het delen van source code bestaat al langer. In 1955 werd de source code van/op IBM Mainframe al gedeeld in de SHARE User Group. In de jaren ’80 ontstonden diverse projecten, zoals GNU, Free Software Foundation, GNU GPL, etc. Het Open Source Initiative werd in 1998 door Eric Raymond, Bruce Perens en Michael Tiemann van Palo Alto opgericht om opensourcesoftware te promoten. In die tijd ontstond ook het label ‘Open Source’.
Gedurende de dag zijn we in verschillende groepjes naar de diverse presentaties en workshops gegaan. De één wat beter dan de ander. Over het algemeen waren de verschillende collegezalen druk bezocht. Iedereen zat weer als vanouds in de schoolbanken. Naast fysiek, werden de meeste sessies ook online aangeboden via het FOSDEM-streaming platform. Een aantal keer waren de collegezalen zo vol dat de presentatie of workshop beter te verstaan was via de stream. Het was daarom ook toepasselijk dat de eerste break-out sessie die wij bijwoonde over audio streaming ging.

Pipewire; het verbeteren van audio en video in Linux
De sessie over Pipewire van Wim Taymans ging over een project voor het verbeteren van audio en video in Linux. Het biedt de mogelijkheid om met low-latency allerlei bewerkingen op audio en video te doen. Veel linux distributies maken nog gebruik van PulseAudio. Pipewire wordt als opvolger van PulseAudio gezien. In Fedora 32 (februari 2021) en Ubuntu (november 2022) is Pipewire de standaard geworden.
Container backup and restore in userspace
Een andere interessante sessie ging over container backup and restore in userspace. Het doel is tweeledig; Forensic Container Checkpointing (FCC) en container live migration. Met FCC wordt een snapshot van de running container (inclusief geheugen, file pointers, bestanden, etc.) genomen die je later kan restoren alsof de container daar altijd heeft gedraaid. Dit kan zelfs op een andere omgeving. De container live migration is bedoeld om containers zonder downtime van de ene node naar de andere te migreren. Op dit moment bestaat dit nog uit de volgende handmatige stappen:
- Maak een checkpoint
- Maak een checkpoint-image en plaats deze in een image registry
- Maak een nieuwe deployment aan met een verwijzing naar dit image
- Kubernetes start eerst het normale image en plaatst het checkpoint-image vervolgens via geïnjecteerde parasite code terug in het geheugen
- Op deze manier houdt je Kubernetes voor de gek en lijkt het alsof je gewoon een standaard container uitgerold hebt.
Het project is nog zeker niet af maar wel veelbelovend. Eén van de aandachtspunten is bijvoorbeeld security. Hoe ga je om met memory dumps van de container? Wat als je security runtime software draait op je cluster? Kortom, genoeg om over na te denken.
Hoe zie je het memory gebruik van een applicatie op Linux?
Een daaropvolgende presentatie luidde: “7 years of cgroup v2: the future of Linux resource control.” Deze presentatie was erg goed. Hij werd gegeven door Chris Down, een engineer van het Facebook Kernel team. Hij houdt zich voornamelijk bezig met cgroups en memory management in de Linux kernel. De presentatie begon met de strikvraag: “Hoe zie je het memory gebruik van een applicatie op Linux?” Dat is dus niet met het commando ‘ps’ of ‘free’. Die geven maar een gedeelte van het antwoord. In de praktijk is het monitoren van geheugengebruik complex. Het is de waarheid, maar de waarheid is soms complex. Je hebt te maken met wat de applicatie reserveert, gebruikt, teruggeeft, caching, memory paging etc. Chris heeft onderzocht op wat voor manieren je geheugenmanagement beter kunt toepassen. Zijn onderzoek heeft ertoe geleid dat het serverpark van Kubernetes platformen bij Facebook gemiddeld tussen 5 en 15% meer performed na het implementeren van een beter memory managementmodel in Kubernetes. Cgroup v2 is vanaf Kubernetes v1.25 stabiel.
Die avond kwamen wij gezellig bij elkaar in een restaurant om te genieten van een heerlijk diner. Uiteraard waren de verschillende FOSDEM-presentaties en workshops het gesprek van de avond. Na een korte pub crawl zijn we geëindigd in een lokale kroeg om onder genot van een drankje elkaar nog beter te leren kennen. Het ging over van alles en nog wat. Het was erg gezellig!

Zondag – 5 februari
Grafana Loki: Logging, but make it cloud native
Zondagochtend begon met een interessante sessie rondom logging, namelijk Grafana Loki: “Logging, but make it cloud native.” Loki is een log aggregatie systeem, gebaseerd op Prometheus. Het is één van de open-source projecten van Grafana Labs. Het belangrijkste doel van Loki is een kosteneffectieve en gebruiksvriendelijke oplossing te bieden voor het verzamelen, opslaan en doorzoeken van logs. Het meest in het oog springend detail was het feit dat Loki inmiddels al 900 GB per seconde aan throughput kan behalen tijdens het zoeken naar logs. In tegenstelling tot traditionele log aggregatie systemen indexeert Loki niet alle velden. Het enige veld wat geïndexeerd wordt is hierbij het tekstveld. Daarnaast worden de logs in tijdseenheden ingedeeld, per blok 30 minuten om precies te zijn. Door gebruik van multithreading is het hierdoor mogelijk om een query over een zoekperiode van 30 minuten even lang te laten duren als een query met een zoekperiode van één jaar. In vergelijking tot andere oplossingen levert 150 PB aan data een index op van maar 55 GB.
Het debuggen van de observability stack
De presentatie door Julien Pivotto over de “O11y toolkit” was ook zeer interessant, vooral voor degene die veel met het onderwerp “observability” te maken hebben. “O11y“ betekent observability. Observability (waarneembaarheid) is een belangrijke eigenschap van een systeem, omdat het engineers en beheerders in staat stelt het systeem te controleren, te diagnosticeren en te debuggen. Hoe beter een systeem waarneembaar is, hoe gemakkelijker het is om te begrijpen wat er in het systeem gebeurt en om potentiële problemen op te sporen. Vaak hebben sprekers het over een bepaalde oplossing omtrent logging, metrieken en tracing. Deze presentatie ging echter over het debuggen van de observability stack. Julien heeft bijvoorbeeld tooling gemaakt om te onderzoeken of de observability stack performed en bijvoorbeeld geen vertraging ervaart. Mocht je een kijkje willen nemen, ga dan vooral naar zijn O11y Toolkit website.
Dit waren maar een aantal highlights van de vele sessies die wij bijgewoond hebben. Er was nog veel meer te beleven. Zo waren er in totaal meer dan 700 presentaties en workshops. Het was daarnaast ook erg leuk om voor en na de sessies of in de wandelgangen te spreken met vele enthousiastelingen.
Naast het feit dat het enorm gezellig was om met collega’s naar Brussel af te reizen hebben wij ons rugzakje wederom gevuld met veel nieuwe technologische oplossingen, implementaties perspectieven en best practices. Genoeg om de komende tijd over te reflecteren. Daarnaast is het ook geweldig om te zien hoe een evenement als FOSDEM door zoveel verschillende vrijwilligers tot zo’n groot succes gemaakt wordt. Elk jaar weer. Enorm veel respect daarvoor.
Hopelijk tot op FOSDEM 2024!