True maakt Kubernetes toegankelijk voor iedereen (Tweakers)

True maakt Kubernetes toegankelijk voor iedereen - Tweakers
True maakt Kubernetes toegankelijk voor iedereen - Tweakers
Home / Blog & Nieuws / Cloud native / True maakt Kubernetes toegankelijk voor iedereen (Tweakers)
Tweakers.net wordt al bijna 21 jaar gehost door True. Sinds jaar en dag is het een bekende partij in de wereld van serverhosting, maar het bedrijf is ook zeer bedreven in de wereld van Kubernetes (K8s). Een “geweldig platform”, aldus Solution Architect Martijn van Calker. In 2015 kwam hij voor het eerst in aanraking met containers, om precies te zijn met Docker. “Sindsdien zijn containers de rode draad in mijn carrière. Ik ben ooit begonnen als developer en ben me steeds meer gaan interesseren in alles rondom devops. Van daaruit was het een kleine stap naar containers. Heel veel organisaties zijn ermee bezig, merk ik. Of het nu een dedicated Kubernetes-omgeving in de public cloud of lokaal is, het maakt niet uit. Waar je nu ook aan tafel zit, het gesprek gaat vaak over Kubernetes.”

Sinds april werkt Martijn voor True, dat in 2018 de eerste bètaversie lanceerde van zijn eigen Kubernetes-platform. Wat maakt het orchestration-platform zo speciaal? “Een paar jaar geleden was het zeker nog niet perfect en het is continu in ontwikkeling, maar toen ik het leerde kennen, dacht ik al wel: dit is alles wat Docker nog niet is. Orchestration- en configuratietools als Docker Swarm en Docker Compose werkten al wel, maar waren niet goed schaalbaar. Kubernetes was dat wel, en het was ook goed uit te breiden in functionaliteit, bijvoorbeeld voor het uitbreiden van netwerken, service-meshes en het automatiseren van onderhoud. Met een enorme community erachter gaan de ontwikkelingen snel en de mogelijkheden nemen toe. Daar zit ook een uitdaging, omdat het kennis- en toepassingsgebied voor Kubernetes enorm breed is.”

De artikel is eerder gepubliceerd op Tweakers door Tweakers Partners.

Veel vrijheid met managed Kubernetes

Martijns collega Marijn de Vlieger is manager Solutions bij True. “Ik kwam hier drie jaar geleden binnen, er was toen net een bèta gedraaid van onze Kubernetes-dienst. Mijn achtergrond ligt in operations en ik loop al jaren rond in de managed hosting-branche. Het aan elkaar ‘knopen’ van verschillende soorten hard- en software heb ik altijd al mooi gevonden. Bij True ben ik als Solution Architect verantwoordelijk geweest voor het ontwerpen van allerlei hosting-platformen, voordat ik begin 2021 de overstap maakte naar een rol als manager van de afdeling Solutions, waar ook Kubernetes onder valt.” Dat je met behulp van True gemakkelijk en veilig Kubernetes kan draaien in productie, weten veel van de klanten wel, zegt Marijn. “We beheren een eigen containercluster waar we een aantal producten omheen hebben gebouwd om tot een managed Kubernetes-cluster te komen. Gebruikers hebben daarop de vrijheid om hun eigen containers te deployen en uit te rollen op ons platform.”

Zijn containers altijd de oplossing? Hoe ‘ouderwets’ zijn VM’s nu geworden? “Nou, die zijn nog wel relevant hoor, evenals hardware”, zegt Martijn. “Je hebt hier twee lagen van diepte. Kubernetes draait uiteindelijk ook op een server die ergens in een rack hangt en die als virtualisatiehost is ingericht. Daar draaien dan weer containers op die je vervolgens in een cluster hangt. Er zijn zeker workloads die op een VM veel beter werken; ik schat dat zo’n tachtig procent van die workloads best naar Kubernetes kunnen.” Marijn voegt eraan toe: “Met als kanttekening dat jouw applicatie hier wel geschikt voor gemaakt moet worden. Wat ik persoonlijk prettig vind, is het abstractieniveau van Kubernetes. Je nieuwe feature of applicatie-update is zo uitgerold en getest. Je hoeft niet meer uren of dagen te wachten op traditionele systemen en werkwijzen. Wanneer je applicatie geschikt is voor zo’n omgeving, heb je meer flexibiliteit en grip op de lifecycle van je applicatie.”

Claim je plek bij een True Kubernetes Workshop! Check de geplande evenementen hier.

Begin met het stellen van vragen

True gaat met klanten altijd eerst het gesprek aan voordat de stap naar Kubernetes wordt gezet, vertelt Marijn. “Is er bijvoorbeeld wel een valide use case voor het gebruik van een containerplatform? Als je bijvoorbeeld heel erg afhankelijk bent van local storage, kan in sommige gevallen een host in een VM of zelfs een dedicated server beter geschikt zijn. Daar doen we altijd een assessment op. Daarna volgt een traject dat afhankelijk is van de kennis bij onze klant en de partijen waarmee we gaan samenwerken, om te kijken hoe we onze kennis gaan bundelen en inzetten.” Zorgvuldigheid is belangrijk, zegt ook Martijn. “Bijna iedereen die aan webdevelopment doet, heeft weleens een containertje gebouwd. Het lijkt simpel, maar er kan zoveel misgaan als je naar productie wil. Je kunt het voor jezelf veel te complex maken. Hoe kom je bijvoorbeeld bij je container als hij in de public cloud draait? Hoe ga je debuggen? Waar staan je logs? En hoe ga je de security inrichten? Allemaal zaken waar je eerst naar moet kijken.”

Martijn: “Begin je met Kubernetes, dan heb je eigenlijk tien jaar aan best practices door te voeren. Je moet er wel een CI/CD-pipeline op inrichten. Hoewel je development-proces er een stuk beter van wordt, kun je daar niet zomaar van afwijken. Even inloggen op een server en een bestandje aanpassen, gaat niet meer, omdat je container dan misschien niet meer bestaat op de plek waar je hebt gewerkt en je wijzigingen alweer ongedaan zijn.” Het is vooral belangrijk dat je goede redenen hebt om aan de slag te gaan met containers. Marijn: “Als je doel is om het developmentproces gemakkelijker te maken en daar meer snelheid in te hebben, dan kom je er vanuit de goede hoek in. Maar doe je het omdat bijvoorbeeld Zalando of Apple met containers bezig is en jij dit daarom ook wil, dan kom je er verkeerd in.”

Cloud-native landschap verandert voortdurend

Is Kubernetes dan iets waar je helemaal zelf mee aan de slag kunt gaan? Marijn: “We krijgen regelmatig de vraag of we ook een kale Kubernetes-versie kunnen leveren, of een singlehost-versie ervan. We zien echter dat je met een kale Kubernetes-versie nog niet zo heel veel kunt, waardoor je veel zelf in moet richten. Denk bijvoorbeeld aan je netwerk (ingress) of storage. De leercurve is steil, zeker als je Kubernetes nog moet leren, om daar de benodigde services op te configureren.” Wie het cloud-native landschap volgt, weet dat dit geen overbodige luxe is. De beschikbaarheid van tooling is enorm en verandert voortdurend; ga daar maar eens een keuze in maken. “Daarom hebben wij al een keuze gemaakt waarvan we overtuigd zijn dat het een goede manier is om met Kubernetes aan de slag tetrue gaan.”

True, sinds 16 december ook een Kubernetes Certified Service Provider (KCSP), kiest zoveel mogelijk voorstabiele projecten die gesteund worden door de community die sterk genoeg is om issues snel te verhelpen. Maar ook performance is een belangrijke overweging, vertelt Martijn: “We hebben gekozen voor Linkerd omdat het relatief licht is. Een service-mesh kan zwaar zijn voor je cluster en je wil niet dat een kwart van je resources daar naartoe gaat.” Overigens zit een gebruiker absoluut niet vast aan bovenstaande keuzes. Marijn: “Wij schrijven niet voor dat je deze tools moet gebruiken. Heb je bijvoorbeeld liever Flux in plaats van ArgoCD, dan is dat prima.”

De gekozen services om Kubernetes heen zorgen ervoor dat je direct aan de slag kunt met het platform. Martijn: “Zo hoef je zelf niet meer alle services uit het CNCF-landschap met elkaar te vergelijken en in te richten. Daarmee heb je zomaar weer honderd uur bespaard, die je aan ontwikkelen kunt besteden. Zeker voor beginnende ontwikkelaars op Kubernetes bespaart dat veel tijd.”

Gebrek aan tijd is ook een uitdaging

Wie Kubernetes nog steeds een overmatig complex gedrocht vindt, krijgt van Marijn en Martijn deels gelijk. “Er zijn 19 manieren om een container te draaien bij AWS, om maar een voorbeeld te noemen”, zegt Marijn (voor een bijpassende meme, klik hier). “En er komen er steeds meer bij. En dan heb je het nog maar over één public cloud. Maar er zijn ook relatief eenvoudigere oplossingen, en hoe complexer je omgeving al is, hoe meer de inzet van Kubernetes je gaat helpen.”

Om dit in de praktijk te laten zien, organiseert True gratis Kubernetes-workshops op zijn hoofdkantoor in Amsterdam. Geen overbodige luxe, zo vindt Martijn: “Ik ken veel developers die geïnteresseerd zijn in Kubernetes, maar nauwelijks de tijd hebben of krijgen om uit te zoeken wat het doet. Juist voor hen is een workshop heel nuttig om stappen te kunnen maken.” Marijn: “Vooral als het gaat om storage en netwerk kan Kubernetes best ingewikkeld zijn om het beheer goed in te richten. Maar als het lukt, is dat ontzettend tof. “

De voordelen die je met Kubernetes kunt behalen, zijn flink, maar je blijft een team nodig hebben dat het platform onderhoudt. De Kubernetes-specialisten van True hebben al meer dan twintig organisaties – onder andere Testenvoortoegang en Prijsvrij Vakanties – geholpen met de migratie naar containers en Kubernetes. Marijn: “Ik zou zeggen, daag onze Solutions Architects uit met jouw Kubernetes Challenge!”

Lees ook: De True Story van Testenvoortoegang en Prijsvrij Vakanties!

Schrijf je in voor de True Kubernetes workshop!

Heb je een achtergrond als developer of sysadmin, werk je misschien al met containers en wil je je verdiepen in Kubernetes? Schrijf je dan in voor een van de gratis Kubernetes-workshops op het True-kantoor. Check het aanbod hier!

True Ligan
Managed hosting sinds 2000