Waarom moet je als bedrijf kiezen voor Kubernetes?
Kubernetes is een zeer indrukwekkende tool om grote workloads efficiënter te laten draaien, maar dan moeten die taken wel bij Kubernetes en gecontaineriseerde applicaties passen. Niet alle software profiteert evenveel van containers.
Wanneer is Kubernetes misschien niet de juiste tool?
Kubernetes is vooral handig voor microservice*-architecturen waarbij elke applicatie is opgedeeld in kleinere componenten die afzonderlijk van elkaar opgeschaald, beheerd en ontwikkeld kunnen worden. Niet elk bedrijf werkt uitvoerig met microservices.
* Microservices zijn kleine onafhankelijke softwarecomponenten die zijn ontworpen om slechts één taak te doen.
Monolithische toepassingen
Monolithische toepassingen* zijn een voorbeeld van een situatie waarin Kubernetes absoluut geen voordeel heeft. Monolithische applicaties zijn, in tegenstelling tot onderverdeelde microservices, als één geheel ontworpen en gebouwd. Als gevolg is het makkelijk om de applicatie verder te ontwikkelen en te onderhouden, maar je bent erg beperkt met de manieren waarop je deze applicaties kan aanpassen. Enkele bekende voorbeelden van monolithische applicaties zijn Microsoft Word, Adobe Photoshop, maar ook een databeheersysteem zoals MySQL of het bekende Customer Relationship Management-systeem Salesforce.
* Een monolithische toepassing is een applicatie die als één samenhangend geheel is ontworpen en waarvan alle functionaliteit op een locatie zitten.
Als je een grote applicatie hebt, is het moeilijk om nieuwe functies toe te voegen en de code te onderhouden. Je moet ook de hele toepassing opschalen in plaats van losse microservices bij Kubernetes. Toch draaien nog veel bedrijven op deze monolithische toepassingen en zolang de hele IT-infrastructuur niet wordt vernieuwd, is het niet meteen nuttig om gebruik te maken van Kubernetes. Dit wil niet zeggen dat het in de toekomst niet handig kan zijn om als bedrijf over te stappen op een systeem waarbij containers, en dus Kubernetes, het voortouw nemen.
Legacy-applicaties
Het kan ook zijn dat jouw bedrijf gebruik maakt van veel Legacy-systemen* waarbij het moeilijk is om over te stappen naar Kubernetes. “Legacy” betekent letterlijk iets dat je meesleept uit het verleden van je bedrijf en de keuzes van vroeger, waar je niet zomaar vanaf raakt. Deze systemen maken logischerwijs geen gebruik van gecontaineriseerde applicaties. Net zoals met monolithische toepassingen is het vaak moeilijk om op te schalen en bovendien brengen Legacy-systemen wel meer problemen met zich mee.
* Legacy-systemen zijn oude, niet altijd even betrouwbare software of computersystemen die nog steeds in gebruik zijn ondanks dat er vaak betere en nieuwere opties beschikbaar zijn.
Oudere applicaties lopen veel meer risico op gebied van (cyber)security dan moderne systemen. Hierdoor vormen ze ook een gevaar voor de gehele IT-infrastructuur van een bedrijf. Daarnaast worden deze applicaties niet of nauwelijks meer ondersteund door de oorspronkelijke leveranciers, waardoor je als bedrijf nieuwe functies en tools mist.
Het integreren van deze legacy systemen binnen Kubernetes is mogelijk, maar het kan wel een flinke uitdaging zijn. Voordat men aan de slag gaat, raden we aan om bij een expert na te vragen of deze systemen überhaupt geschikt zijn om over te zetten naar Kubernetes. Misschien moet er wel eerst het een en ander aangepast worden om deze systemen Kubernetes-ready te maken.
Wat zijn de grootste voordelen van Kubernetes voor bedrijven?
We zijn in het vorige hoofdstuk al kort ingegaan op enkele voordelen van Kubernetes, maar hier zullen we het even concreet maken. Het gebruik van gecontaineriseerde applicaties zorgt in één woord voor flexibiliteit.
Waar je met oude systemen nog vast zat aan een enkele applicatie, heb je met het gebruik van Kubernetes de touwtjes in eigen handen. Het is niet meer nodig om een volledige service stil te leggen om een update door te voeren en de dagen dat een enkel softwarefoutje een programma stillegt, zijn grotendeels achter de rug..
Efficiëntie
Met het gebruik van Kubernetes krijgen IT-teams een duidelijk overzicht van alle toepassingen en kunnen ze deze uiterst efficiënt beheren. Zij kunnen gemakkelijker applicaties uitrollen en updaten, veiligheidsupdates uitvoeren en waar nodig microservices offline halen zonder dat de rest van het systeem hier hinder aan ondervindt.
Je kan veel taken binnen Kubernetes automatiseren waardoor je meer tijd kan steken in zaken zoals DevOps.* Daarnaast is het niet nodig om 24/7 paraat te staan.
* Het begrip DevOps is een combinatie van development en operations. Het benadrukt de samenwerking tussen ontwikkelaars (developers) en IT-operations (Ops). Het doel is om het werkproces rondom software te verbeteren, te versnellen en efficiënter te maken.
Opschaling
Flexibiliteit was het codewoord en dat is nergens zo duidelijk als bij de schaalbaarheid die Kubernetes een bedrijf biedt. Bedrijven kunnen hun applicaties in meerdere containers tegelijkertijd draaien. Je bent niet meer beperkt door logge virtual machines, maar zolang de onderliggende hardware toereikend is, kan je bijna onbeperkt deze applicaties opschalen en weer afbouwen waar gewenst.
Betere beveiliging
Het beveiligen van een Kubernetes infrastructuur is geen simpele taak, maar het helpt dat deze tool is ontworpen met het oog op security. Als we alle beveiligingsfuncties moeten opnoemen dan zijn we hier nog wel even, maar denk aan uitgebreide netwerkbeveiliging, toegangsbeheer door middel van authenticatie en autorisatie, snelle updates door middel van de open-source community en databeveiliging.
Jouw data is niet gekoppeld aan een container waardoor het wegvallen van een container niet betekent dat de data voor goed gecomprimeerd is. Natuurlijk is Kubernetes zoals elke tool niet onkwetsbaar, dus het blijft belangrijk om de best practices toe te passen.
Waar moet je rekening mee houden voordat je met Kubernetes aan de slag gaat?
Kubernetes is een fantastische tool in je arsenaal, maar het is niet de makkelijkste om mee te beginnen. Het zal niemand die dit e-book leest verbazen dat Kubernetes en het gebruik van gecontaineriseerde applicaties zeer complex is.
Het duurt even voordat je over de expertise en handigheid beschikt om Kubernetes zo efficiënt mogelijk te gebruiken. Als bedrijf is het misschien nodig om meer tijd en middelen te investeren in de implementatie en het gebruik van de applicatie dan bij reguliere of bestaande applicaties.
De learning curve is groot, maar de payoff van een succesvolle implementatie van Kubernetes is groter.
Managed Kubernetes
Gelukkig hoef je dit niet alleen te doen. Kubernetes staat voor flexibiliteit en waarom zou dat moeten stoppen bij de tool zelf. Als je als bedrijf gebruik maakt van een service, zoals Managed Kubernetes, om de implementatie en onderhoud van jouw Kubernetes-platform te regelen, dan neem je flink wat zorgen weg.
Experts op het gebied van Kubernetes weten beter wat handig is voor jouw bestaande systemen. En met vragen zoals ‘Past Kubernetes bij de bedrijfsinfrastructuur?’ en ‘Hoe zorgen we ervoor dat de beveiliging up to date blijft?’ kan je ideaal bij hen terecht.
Kubernetes is een revolutionaire digitale wereld die constant wordt geüpdatet en dan is kennis meer waard dan goud. Het volgen van workshops over Kubernetes of contact met specialisten die je kunnen helpen met deze tak van sport, wordt sterk aangeraden.
Hoe ziet een overstap naar Kubernetes eruit?
De voordelen van Kubernetes zijn inmiddels wel duidelijk, maar hoe ziet zo’n transitie van een traditionele infrastructuur naar K8s eruit?
In het volgende voorbeeld laten we zien hoe een groeiend e-commercebedrijf met een traditionele webserver- en databaseserverinfrastructuur kan profiteren van de overstap naar Kubernetes.
Stel, het e-commercebedrijf in onze hypothetische situatie ondervond problemen met schaalbaarheid, beschikbaarheid en onderhoud van hun infrastructuur als gevolg van toenemend verkeer en een groeiend klantenbestand. Ze onderzochten of een overstap naar Kubernetes deze problemen kon oplossen en het werk efficiënter kon maken.
De eerste stap was om de bestaande infrastructuur te analyseren en vast te stellen welke componenten van het bedrijf konden profiteren van containerisatie en ze kwamen uit op de logische zaken: de webserver, applicatieserver en de databaseserver.
Het bedrijf ging daarna aan de slag om elke belangrijke component om te zetten in hun eigen container met behulp van de best practices voor containerisatie. Na het containeriseren van de belangrijkste componenten, richtte het bedrijf een Kubernetes-cluster in.
Ze kozen ervoor om een managed Kubernetes-service te gebruiken, zoals die van Combell, om de beveiliging en het beheer van de cluster te versimpelen. Vervolgens werden de gecontaineriseerde applicaties naar Kubernetes gemigreerd en is de overstap compleet.
De overstap van de traditionele infrastructuur naar Kubernetes is zeer voordelig geweest voor het e-commercebedrijf. De infrastructuur is nu zeer schaalbaar waardoor ze snel kunnen inspelen op de toenemende vraag van hun klanten en ook de gebruikerservaring is soepeler.
Dankzij de flexibiliteit van Kubernetes kan het bedrijf ook makkelijker ingrijpen als een container niet werkt naar behoren en kunnen de workloads makkelijk verdeeld worden als er problemen zijn met de hardware of software.
Ook bespaart de overstap naar Kubernetes het bedrijf kosten omdat ze nu sneller kunnen innoveren en anticiperen op de alsmaar veranderende markt.
Download het Kubernetes e-book
{{{ data.title }}}
** Door het downloaden van dit white paper gaat u akkoord met onze privacy-, cookie– en algemene voorwaarden. Uw gegevens worden opgenomen in onze database en kunnen gedeeld worden met de samenstellers van deze downloads. We maken er u op attent dat u door deze samenstellers kan worden benaderd. U kan uw gegevens hier centraal bekijken, beheren, uitschrijven of aanpassen.