Sla over en ga naar content

Caleb’s Cloud Update 3: Waarom IT-teams enthousiast zijn over containerisatie

Wat zijn containers, waarom zijn ze razend populair in de IT en waarom is de Cloud de perfecte plek voor containers om te leven?

Een van de dingen die ik in de avonduren graag op Youtube kijk, is Shark Tank. Als je niet bekend bent met de show, dit gaat over ondernemers die hun bedrijf pitchen voor vijf investeerders om te proberen een investering veilig te stellen. Ik geniet ervan om te zien hoe de investeerders elkaar proberen te slim af te zijn voor de best mogelijke deals. Ik krijg een glimlach op mijn gezicht als een ondernemer een ingenieuze uitvinding pitcht die een bekend probleem oplost en de woorden die het moment vaak aanvullen zijn: “zo simpel is het”. Dat was mijn reactie toen ik eindelijk een container zag met een app die ik nodig had – “zo simpel is het”.

Dus laten we eens kijken waarom containers naar mijn mening absoluut essentieel zijn voor cloud-native scalabe organisaties.

The perfect office

Laten we ons voorstellen dat InstaCloud Ltd net is verhuisd naar een nieuw kantoorgebouw in de stad. Ze hebben verschillende teams die allemaal aan de slag gaan in een van de acht kantoorruimtes. Iedereen is enthousiast over de nieuwe ruimte en het ziet er echt goed uit. Maar het duurt niet lang voordat de mailbox van HR wat activiteit begint te zien.

Het Marketingteam klaagde dat de ramen te weinig licht binnen lieten, dus wilden ze de verlichting op hun verdieping aanpassen. Het QA-team zei dat het eten dat wordt geserveerd beter kan. Sales gaf aan dat de temperatuur een paar graden zou moeten dalen voor de hele verdieping, omdat deze centraal werd geregeld.

Het Development team klaagde dat het niet eerlijk was dat elke medewerker slechts 1 monitor kreeg, omdat ze productiever zouden zijn met 2. Het mediateam klaagde dat hun computers wat aan de trage kant waren. En natuurlijk begonnen de problemen tussen afdelingen in de verschillende ruimtes te leiden tot frustratie tussen teams, veel tijdverspilling en uiteindelijk nam de productiviteit van de hele organisatie af.

Wat is de oplossing?

How can we resolve the tensions between departments? Well, the first thing is to make sure that we cater to the needs of each team independently and create solutions that will enable the teams to make independent decisions for their own rooms. In this way, each team can control the temperature in their room, the lighting they use, the number of screens they need, and the computers that they run (the food thing might be a bit hard to solve, but you can’t have everything!).

Hoe lossen we de spanningen tussen de afdelingen en teams op? Het eerste is om ervoor te zorgen dat we in de behoeften van elk team voorzien en oplossingen creëren waarmee de teams onafhankelijke beslissingen kunnen nemen voor hun eigen ruimtes. Op deze manier kan elk team de temperatuur in hun kamer regelen, de verlichting die ze gebruiken, het aantal schermen dat ze nodig hebben en de computers die ze gebruiken (het eten is misschien een beetje moeilijk op te lossen, maar je kunt niet alles hebben).

Containers

Deze analogie is vergelijkbaar met de frustratie waarmee veel IT-teams worden geconfronteerd als ze proberen bedrijfssoftware te upgraden en te onderhouden. Naarmate de software van de organisatie groeit en complexer wordt, worden de afzonderlijke softwarecomponenten steeds meer afhankelijk van de onderliggende bronnen om het draaiende te houden. Als deze afhankelijkheden worden gewijzigd, kan dit onvoorspelbare effecten hebben op alle toepassingen die ervan afhankelijk zijn. Net zoals een verandering in de kantoortemperatuur het Sales team kan helpen, maar erg onaangenaam kan zijn voor het Development team in een andere kamer.

Laten we zeggen dat elke individuele applicatie een ondersteunende ‘software X’ nodig heeft om te werken. Niet alle applicaties hebben dezelfde versie van ‘software X’ nodig omdat sommige afdelingen versie 1 of 1.2 of 3.4.2 etc. gebruiken. Het is een probleem als er maar één versie van ‘software X’ beschikbaar is voor alle applicaties.

Hoe werken containers?

Je kunt een container zien als een individuele ruimte in het kantoorgebouw die is geïsoleerd van alle andere kamers. Deze container bevat een enkele applicatie samen met alles wat het nodig heeft om zijn werk te doen. Door apps in containers te plaatsen, kan elke app gebruikmaken van de specifieke versie van ‘software X’ die hij nodig heeft en dit lost uiteindelijk veel problemen op.

Door containers te gebruiken, kan een organisatie ongelukkige betrouwbaarheid conflicten tussen applicaties beperken. Dit maakt het leven van zowel Dev- als Ops-teams veel gemakkelijker.

Cloud with Caleb

Afgezien van deze onderlinge afhankelijkheid, zijn er nog een heleboel andere voordelen die we zullen bespreken in de volgende Caleb’s Cloud Update. Caleb Munyasya is een junior DevOps Consultant die in Nederland werkt. In Cloud met Caleb duikt hij diep in verschillende cloud-onderwerpen. Caleb wil begrijpen hoe verschillende tools, van Azure tot OpenShift, met elkaar werken en hoe de DevOps-cultuur onze manier van werken een nieuw leven in kan blazen – en natuurlijk zoveel mogelijk automatiseren. Hij begon zijn eigen webpagina met de blog “Cloud with Caleb”. Neem een kijkje als je geïnteresseerd bent.