7min Devops

Wat hebben Kubernetes en personeelstekort met elkaar te maken?

Wat hebben Kubernetes en personeelstekort met elkaar te maken?

Er zitten behoorlijk wat voordelen aan Kubernetes op het gebied van efficiëntie. Kunnen deze voordelen ook een rol spelen in het bestrijden van het personeelstekort waar organisaties tegenaan lopen? Geen enorm gangbare vraag wellicht, maar wat ons betreft toch interessant genoeg om te stellen.

We spreken voor dit artikel met Marijn de Vlieger, Head of Technology bij True. Als we hem de vraag uit de titel voorleggen, is het eerst even stil. Het is dan ook niet echt een gangbare vraag. Want wat hebben de krapte op de arbeidsmarkt en Kubernetes nu eigenlijk met elkaar te maken? Behalve dan dat er altijd te weinig developers zijn, ook nu we overstappen op Kubernetes als beheeromgeving. Op zich niet veel, geeft hij meteen toe. Het korte antwoord op de vraag of Kubernetes de problematiek rondom personeelstekort oplost is dus ‘nee’. Toch kan Kubernetes wel degelijk positieve effecten hebben op onderdelen van developmentprocessen en -workflows. Hiermee kun je de krapte wel beter opvangen.

De Vlieger begint met vertellen dat DevOps-engineers (wat bij Kubernetes eigenlijk altijd de manier zou moeten zijn om te ontwikkelen) veel minder brandjes blussen, veel minder support hoeven te leveren en veel meer tijd kunnen stoppen in de infrastructuur. Dat wijzen onderzoeken eigenlijk consequent uit. Maak je gebruik van een managed infrastructuur, dan ben je waarschijnlijk sowieso niet met infrastructuur bezig en maak je daar dus nog meer winst op.

Bij deze claims horen zoals altijd de nodige kanttekeningen, geeft De Vlieger ook meteen aan. Ze hangen sterk af van je bedrijfsgrootte. “Wat waar is voor Amazon en Apple, is niet waar voor de gemiddelde MKB’er”, geeft hij aan. De tendens is echter duidelijk: er zitten zonder twijfel de nodige voordelen aan Kubernetes/DevOps voor hoe ontwikkelaars hun werk kunnen doen.

Kubernetes trekt de juiste mensen aan

De keuze voor Kubernetes kan voorwaarden scheppen waarmee een organisatie de krapte op de arbeidsmarkt beter kan opvangen. Je trekt er allereerst een bepaald soort mensen mee aan. Mensen die graag met deze moderne technologie aan de slag gaan. Die helpen de organisatie op die manier ook vooruit.

Kies je voor Kubernetes, dan brengt dat ook enkele cultuurveranderingen met zich mee. Dat is wel nodig bij een dergelijke overstap. Het is echter zeker niet nodig om meteen met alles en iedereen de overstap te maken. Soms is dat zelfs ook helemaal niet verstandig, geeft De Vlieger aan. “Als je nog met een Java-monoliet zit die niet redundant uitgevoerd kan worden en 12 GB geheugen nodig heeft, dan moet je ook niet willen migreren.” De Vlieger ziet trouwens wel duidelijk dat steeds meer organisaties overstappen, bijvoorbeeld door alles in Git te zetten.

Portability zorgt voor hogere productiviteit

Zonder enige twijfel een voordeel van Kubernetes voor organisaties en een voordeel dat de productiviteit verhoogt, is dat Kubernetes betekent dat je aan het containerizen bent. Waarom is dat relevant? “Als je dat doet, dan betekent dat dat iedere developer overal kan werken”, is het antwoord van De Vlieger. Met andere woorden, de omgeving is portable. Weliswaar niet helemaal, want op je laptop kun je eigenlijk geen clusters draaien, maar verder snijdt de stelling van De Vlieger wel degelijk hout. Er is parity tussen productie- en ontwikkelomgeving, dus het is ook overal hetzelfde. Deze eigenschappen van Kubernetes (eigenlijk van containers) zorgen ervoor dat je wel degelijk meer uit je bestaande ontwikkelaars haalt.

Release een non-event, Ops een eitje

Een ander vlak waarop de keuze voor Kubernetes je kan helpen, is op het gebied van documentatie. De documentatie, of liever het gebrek daaraan, is vaak een groot probleem binnen organisaties. Het staat vaak te ver van de IDE af en is niet zelden geschreven door iemand die inmiddels al niet meer bij een organisatie werkt. Onderaan de streep kost dit vaak veel tijd en dus productieve uren voor ontwikkelaars. Nu is Kubernetes zelf inherent niet beter in documentatie dan andere omgevingen, geeft De Vlieger toe. “Maar omdat je met Infrastructure-as-Code aan de slag wilt als je Kubernetes gaat doen, kun je die lijn vrij snel doortrekken en kom je al snel uit bij dingen zoals Backstage”, legt hij verder uit.

Luister ook: In een aflevering eerder dit jaar van onze podcast Techzine Talks hebben we het over ons bezoek aan KubeCon 2023 in Amsterdam. In die aflevering gaat het ook vrij uitgebreid over IDP’s en Backstage. Luister de aflevering via deze link, of speel hem hieronder meteen af.

Verder ben je als je Kubernetes en containers goed inzet niet meer veel tijd kwijt aan releases. “Als je een echte DevOps-cultuur hebt, maak je van releasen een non-event”, geeft De Vlieger aan. Dat doe je namelijk volgens CI/CD-principes iedere vijf minuten. Het heeft dan geen zin om van een release een enorm event te maken. Als er iets niet goed is, doe je gewoon een rollback naar de versie van vijf minuten geleden.

Kijken we naar de Ops-kant, dan heeft de keuze voor Kubernetes nog een duidelijk voordeel, volgens De Vlieger. “Als je als organisatie een Ops-afdeling hebt, dan hoeft er vrijwel niemand uit zijn bed te komen voor een Kubernetes-probleem”, stelt hij. Met andere woorden, Kubernetes-problemen zijn in de regel dermate kleinschalig dat je er niet wakker van hoeft te liggen of te worden. Uiteraard geldt hij zoals altijd dat het wel goed ingericht moet zijn. Als je niet verder bent gekomen dan kubectl run, dan moet je er wel rekening mee houden dat de mensen van de Ops-afdeling regelmatig slapeloze nachten hebben.

Goede inrichting is cruciaal

Alle bovenstaande voordelen zijn er uiteraard alleen als de werkprocessen goed ingericht zijn. Hieronder verstaat De Vlieger dat je volgens CI/CD-principes werkt, een keyvault gebruikt, wachtwoorden niet in Kubernetes opslaat en componenten zoals Helm en Backstage gebruikt.

Daarnaast moet een organisatie de juiste cultuur hebben. Hieronder verstaat hij DevOps, shift-left en continuous releases. Dan vereenvoudigt het je Ops en is je documentatie, mits goed gecontroleerd, beter in orde.

Conclusie

Het antwoord op de vraag of Kubernetes de krapte op de arbeidsmarkt oplost, hebben we in de eerste alinea al gegeven. Dat gaat het niet doen. In principe kan de keuze voor Kubernetes er echter wel voor zorgen dat je beter om kunt gaan met de krapte op de arbeidsmarkt. De productiviteit kan omhoog, de documentatie kan eenvoudiger goed geregeld worden en de min of meer gedwongen gang naar DevOps maakt zaken zoals releases en Ops minder omslachtig en tijdrovend. Voorwaarde is alleen wel dat je het dan goed inricht.

Dat inrichten kun je zelf doen, maar je kunt het ook uitbesteden. De Vlieger werkt voor True, een partij die dit voor organisaties kan doen. Het is dan ook niet verrassend dat hij aan het einde van ons gesprek ook nog even ingaat op het uitbesteden van Kubernetes en alles wat daarmee samenhangt. “Je moet het in ieder geval niet helemaal zelf willen bouwen”, is zijn voornaamste advies. Dat wil zeggen, je ontkomt eigenlijk niet aan de keuze voor een wat meer zogeheten opinionated smaak van Kubernetes. Gebruik je omgevingen zoals Tanzu, Mirantis of SUSE Rancher, dan wordt het al een stuk eenvoudiger. Je kunt ook dat echter volledig uitbesteden aan een partij zoals True. De grote vraag is dan voor velen waarschijnlijk of je dan niet in een lock-in-situatie terechtkomt. Dat is een vraag voor een volgend artikel.

Lees ook: True gaat complexiteit Kubernetes voor en samen met klanten te lijf