KubeCon Parijs 2024: een smeltkroes van ideeën, concepten en zienswijzen
PaaS+
Kubernetes is iets wat al geruime tijd mijn interesse gewekt heeft. Je hoort de term ook steeds vaker voorbijkomen op allerlei plekken; in de wandelgangen, tijdens gesprekken met collega’s en klanten vragen er ook steeds meer naar. Over het algemeen merk ik een sterke toename van belangstelling voor Kubernetes. Ik stond er dus wel even van te kijken toen men tijdens KubeCon ook het tienjarig bestaan van Kubernetes vierde. In tegenstelling tot wat je zou verwachten is Kubernetes dus geen nieuwe rage of noviteit, maar een gedegen container orchestration platform waar al tien jaar lang de knapste koppen in de IT-wereld aan werken. Aan het hart van Kubernetes staat een doorontwikkeling van de Docker runtime (containerd). Nou is het idee van applicaties in containers hosten an sich niet nieuw. Wat Kubernetes echter onderscheidend maakt, is de aansturing van deze containers met een hypermodern systeemontwerp van api’s en modules. Daarbij kan je in dat systeemontwerp de losse componenten (lees modules als CNI, Ingress controllers, storage providers etc.) en diens api’s naar eigen wens inrichten. Kubernetes als ecosysteem doet me denken aan een omvangrijke verzameling bouwstenen.
Genoeg over de techniek, op naar mijn KubeCon ervaring!
KubeCon werd dit jaar gehouden in het Paris Expo Porte des Versailles, een enorm beursgebouw midden in Parijs. De eerste dag bestond voornamelijk uit CNCF gehoste thema onderwerpen. CNCF, of Cloud Native Computing Foundation is de stichting welke onder andere het Kubernetes-project beheert. De themaonderwerpen bestonden uit een programma van verschillende presentaties en sprekers. Ik ben toen naar MultitenancyCon gegaan. Bij Previder heeft ons Devops-team veel werk verzet om een multitenant opzet van Kubernetes op de markt te zetten. Na gedegen onderzoek is men voor een cluster per klantopzet gegaan voor onze Kubernetes as a Service-dienst. Multitenancy is iets wat volop in ontwikkeling is en ik was vooral benieuwd wat de laatste nieuwtjes waren en hoe andere bedrijven dit aangepakt hadden. Mijn conclusie daaruit is dat Multitenancy een heel breed begrip is en dat het voor het een bedrijf iets anders betekent dan voor het andere bedrijf. Voor ons als Internet Service Provider betekent dit dat de ene klant niet bij de deployment (of namespace) van een andere klant mag en dat we het platform geschikt moeten maken voor hostile workloads. Bij hostile workloads laat je je klanten ongetoetste code van onbekende herkomst draaien en mag dit geen overlast veroorzaken aan andere klanten van het platform. Dit wordt “hard” multitenancy genoemd en in dit geval ga je qua risicoafweging uit van het ergste geval en pas je daar je systeemontwerp op aan. Bij “soft” multitenancy kan je denken aan bijvoorbeeld een bedrijf als Spotify; daar werken verschillende teams in dienst van Spotify aan verschillende microservices die gezamenlijk deel uitmaken van het systeemontwerp van de Spotify-dienst. In dit scenario heb je niet te maken met hostile workloads. Ik heb veel concepten voorbij zien komen van pod sandboxing tot custom CNI’s draaien met network namespaces. De conclusie uit deze inzichten en ideeën is dat onze Kubernetes as a Service dienst echt staat als een huis en een zeer geschikte implementatie is om multitenancy in praktijk te brengen.
Van multitenancy tot AI en duurzame computing
Na de MultitenancyCon heb ik de rest van de dag opgevuld met kleinere lezingen (zogenaamde lighting talks van tien minuten) die op het programma stonden. Tegen een uurtje of vijf besloten mijn collega Jordy en ik om er voor die dag een eind aan te breien.
De volgende dag gingen we na een stevig ontbijt bij het hotel met goede zin naar de Keynote presentaties van 09:00 uur. Voor deze presentaties namen we plaats in de gigantische Paris Room. Daar werd de keynote geopend door Priyanka Sharma, CNCF’s Executive Director. Zij vertelde dat Kubecon dit jaar 12.000 bezoekers had getrokken en dat er nog nooit eerder zoveel belangstelling was geweest voor het Kubernetes ecosysteem. Deze keynote en opvolgende presentaties op het programma gingen allemaal over AI. Generative AI is de nieuwste rage in de IT-wereld. Ieder bedrijf lijkt er wel iets mee te doen of van plan zijn om dit te doen. Er is tijdens deze keynote reeks van alles voorbij gekomen: het draaien van AI workloads op GPU clusters in Kubernetes, het bouwen van platformen voor AI en machine learning etc. Tijdens deze presentaties dacht ik een paar keer terug aan de uitspraak “What kind of corn does it grow?” Deze uitspraak heb ik ooit opgepikt uit een podcast en komt erop neer dat je stilstaat bij wat het precies oplevert en of je er goed van kan boeren. Na het luisteren van deze keynotes moet ik eerlijk bekennen dat ik geen antwoord op deze vraag heb gehad. Veel bedrijven zijn met AI en machine learning bezig en het is vaak voor mij niet helemaal duidelijk wat het nou precies oplevert. Dit terwijl er wel enorme bedragen en tijd geïnvesteerd worden en hele datazalen vol met energieverslindende GPU compute clusters worden gehangen om AI workloads te faciliteren. Bij Previder hebben we als datacenter grote stappen gezet om onze PUE-waarde te verlagen en blijven we ons inzetten om steeds efficiënter te werken. Ik was dan ook aangenaam verrast dat tussen alle AI-lezingen ook sustainable computing voorbij kwam als onderwerp. In deze presentatie werd goed afgebeeld dat in de praktijk vaak maar enkele tientallen procenten van de daadwerkelijke compute capaciteit ingezet wordt in geclusterde en redundante omgevingen. Kubernetes zou hierin een sleutelrol kunnen spelen door bijvoorbeeld dezelfde diensten programmatisch op te schalen wanneer de vraag stijgt. Dat is een groot verschil qua opzet waarin je capaciteitsplanning doet met geclusterde omgevingen bestaande uit hardware of VM’s. Technisch gezien kan dit met VM’s ook, maar gezien de omvang en opstarttijden ten opzichte van containers is het een minder vatbare strategie bij volatiele capaciteitsvraag waar snel op- en afschalen vereist is. Traditioneel wordt er dus veel overcapaciteit ingecalculeerd bij het opzetten van deze geclusterde omgevingen; zo kan in een traditionele hardware of VM opzet drie tot vijf keer zoveel resources ingekocht en klaargezet zijn om aan de capaciteitsvraag en redundantie ten behoeve van beschikbaarheid te voldoen. Ik vond het een zeer interessante presentatie die me aan het denken zette hoe we onze dienstverlening nog efficiënter en milieubewuster op kunnen zetten.
Na de presentaties in de Paris room was het tijd om de volgende sessies op het programma te bezoeken. Er was echt ongelooflijk veel keuze. Je hebt op sommige momenten echt een beetje keuzestress welke presentatie je wilt bezoeken. Er zijn soms wel drie presentaties die gelijktijdig starten welke je allemaal wel interessant lijken. Gelukkig kun je deze prestaties ook later terugkijken op het youtube-account van CNCF. Mijn keuze was gevallen voor de presentatie van Cilium en deze stelde zeker niet teleur. Cilium is één van de grotere CNI implementaties binnen kubernetes en is gebouwd op de eBPF kernel interface. Cilium is de eerste netwerk plugin dat een CNCF graduated project is geworden en tijdens de presentatie werd ook wel duidelijk waarom. De mogelijkheden van de Cilium CNI zijn op z’n zachtst gezegd zeer indrukwekkend te noemen. Het kan onder andere ingress (ingaand verkeer), egress (uitgaand verkeer) routeren, ssl termineren, verkeer routeren aan de hand van “weight” getallen om zo een percentage van verkeer tussen twee groepen met pods te verdelen. Ideaal als je A/B testen wilt doen of een Canary release strategie wilt toepassen. Cilium’s monitoring via Hubble was ook indrukwekkend om te zien; tijdens de hele presentatie bouwt men een demo applicatie topologie op in kubernetes en laat deze uiteindelijk visueel uitgetekend met verkeerstromen zien in Hubble. Zowel het onderwerp als presentatie kwamen zeer goed voorbereid en gelikt over. Als je het mij vraagt waren Cilium en eBPF echt het hoogtepunt van de dag. Hele gave techniek waar we nog veel meer over gaan horen.
Met vooruitziende blik naar onze eigen IT-omgeving kijken
Vanaf de tweede dag is ook de beursvloer geopend. Daar kan je alle CNCF-projecten en je favoriete bedrijven opzoeken om een praatje te maken (of om je verzameling felbegeerde stickers aan te vullen die menig IT’er op de deksel van diens laptop heeft geplakt). Alle grote namen die je onder andere op tweakers.net voorbij ziet komen zijn aanwezig; Canonical, RedHat, Github, OpenSearch, noem het maar op en ze zijn aanwezig met een hele troupe praatgrage vertegenwoordigers en kleurrijke stands. Na een tijdje door de enorme menigte geslenterd te hebben was ik wel even toe aan pauze. Aan de zijkant van de beurszaal stonden allerlei picknicktafels waar je even kon zitten. Op sommige tafels stonden ook bakken met Lego en er waren door de bezoekers al imposante bouwwerken waren gemaakt. Het deed me gelijk weer denken aan Kubernetes en hoe gastsprekers van bedrijven met al die losse bouwstenen indrukwekkende bouwwerken van hun IT omgevingen gemaakt hebben. Ik stond er ook bij stil dat dit een significante afsplitsing van het oude en het nieuwe werken in IT-omgevingen is en dat het traditionele clickops geen bestaansrecht zou hebben in de nieuwe wereld van Cloud Native computing. Zou de huidige markt klaar zijn voor zoiets als Kubernetes? Het is mij in ieder geval duidelijk dat deze techniek zeker tien jaar geleden al ver zijn tijd vooruit was. In plaats van rustig te pauzeren ben ik volop aan het mijmeren geslagen. Dat gebeurt wel vaker. De verschillende presentaties zetten me aan het denken hoe we onze eigen diensten zouden kunnen verbeteren. Kubernetes zou een prachtige oplossing zijn om onze DNS- en mailcluster schaalbaar, repeteerbaar en beheersbaarder te maken. Allerlei ideeën ontstaan en worden langsgegaan; hoe zou ik het cluster over meerdere datacenters beschikbaar maken?; hoe zou ik dnsdist in de topologie implementeren, middels MetalLB of een andere manier om inkomend verkeer naar de pods te brengen; via cilium misschien? In mijn hoofd ontstaat zowaar een imposant bouwwerk van losse componenten en containers, volledig naar eigen wens ingericht.
KubeCon is voor mij een smeltkroes van ideeën, concepten en zienswijzen geweest die me geïnspireerd en aangezet heeft om ook met een vooruitziende blik naar onze eigen IT-omgeving en bedrijfsstrategie te kijken. Als het aan mij ligt, dan ben ik er volgend jaar zeker weer bij. Als jij, geachte lezer, tot zover in het artikel bent gekomen, dan raad ik jou aan hetzelfde te doen. Je zult verstelt staan wat Kubernetes allemaal kan!
Enthousiast geworden over Kubernetes en benieuwd wat Previder voor jou kan betekenen? Neem dan gerust contact op met mijn collega Peter Bult!
Meer weten over KuberNetes ?
Neem contact op met jouw accountmanager of neem contact op via onze contactpagina.