Containers, uitgelegd

De kans is groot dat uw IT-afdeling de afgelopen twee of drie jaar veel over containers heeft gehoord. De meest flexibele kleine tot middelgrote bedrijven (MKB's) of ondernemingen zetten mogelijk al containers in. Wat applicatieontwikkeling en IT-infrastructuur betreft, zijn Linux-containers ongeveer net zo bruisend als dit soort technologie wordt.

We hebben al uitgelegd hoe de modulaire applicatiearchitectuur van microservices ontwikkelings- en IT-teams helpt efficiënter te werken, terwijl de kosten en complexiteit van het toevoegen van nieuwe functies en functionaliteit worden verlaagd. Vanuit technologisch oogpunt zijn containers de katalysator van die DevOps-vergelijking. Ze zijn het handige pakket waarmee DevOps- en IT-teams snel en consistent de code, configuraties en afhankelijkheden van een applicatie heen en weer kunnen doorgeven.



Maar wat betekent dat nu eigenlijk voor uw bedrijf? Ik sprak met enterprise IT-oplossingen en open-source softwarebedrijf Red Hat om erachter te komen. Deze uitleg legt niet alleen uit wat containers zijn en hoe ze werken, maar ook op de verschillende manieren waarop, zodra u de technologie begrijpt, uw organisatie containerimplementaties kan gebruiken bovenop uw datacenter of cloudinfrastructuur om sneller kwaliteitssoftware te leveren.

Containers 101
Op hun meest basale niveau zijn Linux-containers toepasselijk genoemd naar de metalen zeecontainers waarmee ze zo vaak worden gelijkgesteld. Of het nu op een vrachtschip, een vrachttrein of op de achterkant van een grote vrachtwagen is, de container zelf is hetzelfde uniforme vaartuig voor het vervoeren van goederen. Lars Herrmann, General Manager van de Integrated Solutions Business Unit bij Red Hat, houdt toezicht op de Linux-containertechnologie van het bedrijf. Herrmann zei dat bedrijven containers gewoon moeten zien als een nieuwe eenheid van werk.

'Containers hebben alles te maken met behendigheid,' zei Herrmann. 'In een complexe organisatie gaat het om het toewijzen van verantwoordelijkheden en de vrijheid om features te leveren. En containers bieden je deze technologie om alles bij elkaar te houden, terwijl je toch je verantwoordelijkheid voor beveiliging, beschikbaarheid en naleving van de regelgeving beheert - alle dingen die er toe doen.'


Klik op afbeelding voor volledige infographic. Afbeelding tegoed: Twistlock

Op deze manier maakt de homogeniteit van containers ze gebruiksvriendelijke bouwstenen. Het zijn kleine, inplugbare eenheden waarop u een microservices-architectuur kunt bouwen die verantwoordelijk is voor operationele efficiëntie en versiebeheer. Tegelijkertijd geven ze DevOps- en IT-teams gedetailleerde controle over hoe ze infrastructuurbronnen inzetten. Herrmann wees er ook op dat containers in wezen een besturingssysteem (OS)-technologie zijn.

'Containers pakken het besturingssysteem en snijden het in twee stukken', legt Herrmann uit. 'Aan de ene kant krijg je de werkeenheid voor de applicatie, die applicatiecode en afhankelijkheden bevat op een manier die kan worden geoptimaliseerd door de DevOps-teams, en [geeft] ze autonomie en controle om beslissingen te nemen wanneer ze dat willen. Ze hoeven niet meer te wachten op andere teams.

'Het andere onderdeel is de kernel van het besturingssysteem. De OS-kernel en container-payload bieden ondersteuning voor het onderzoek en de primitieven die u beschikbaar wilt hebben, zoals opslag, netwerken en beveiliging. Omdat containers een besturingssysteemtechnologie zijn, kunt u ze overal gebruiken, of het nu virtuele hosts of een openbare cloud is. Met die hybride kwaliteit kun je elke applicatie in elke omgeving beheren met dezelfde technologie terwijl je DevOps-teams sterker maakt.'

Containers zijn ook niet hetzelfde als virtualisatie. Herrmann legde uit dat containers en virtualisatie wederkerige krachten zijn. Virtualisatie emuleert een virtuele hardware-omgeving om verschillende softwarestacks uit te voeren; het biedt een zogenaamde abstractielaag om die cloud computing-omgeving flexibiliteit te geven over hoe applicaties en gegevens worden gestructureerd en geïmplementeerd. Dus op een enkele gevirtualiseerde OS-kernel kunt u meerdere servers of instanties uitvoeren. Containers zijn de instanties.

'Er is nog veel verwarring over het door elkaar halen van containers met virtualisatie', zegt Herrmann. 'Virtualisatie lost een ander probleem op, en wij vinden dat containers en virtualisatie elkaar heel mooi aanvullen. Virtualisatie biedt abstractie en emulatie en met containers krijg je een soortgelijk soort abstractie, maar zonder de emulatie. Samen geven ze je geen meetbare overhead en een hoop operationele efficiëntie, maar het kan moeilijk zijn om die twee te scheiden.'

Een snelle analyse van het containerlandschap
De DevOps- en agile-principes waar we het over hebben met betrekking tot containers zijn niet nieuw omdat ze teruggaan naar het concept van servicegeoriënteerde architectuur (SOA) (dat wordt beschreven in onze microservices-uitleg hierboven). Maar de moderne Linux-container werd uitgevonden toen Docker het spel veranderde. Docker is een paar verschillende dingen, maar in de eerste plaats is het een razend populaire open-sourcetechnologie die in 2013 door het Docker Project is ontwikkeld. Het is ontworpen voor het verpakken, verzenden en uitvoeren van elke toepassing als een lichtgewicht container.

Docker is een van de verschillende open-sourceprojecten die de technologie en de ruimte helpen vorm te geven. Kubernetes, oorspronkelijk ontwikkeld door Google en nu beheerd door de Cloud Native Computing Foundation, is een open-sourcesysteem voor het automatiseren van de implementatie, schaling en beheer van containers. Docker en Kubernetes zijn de twee krachtige open-sourceprojecten die de meeste invloed hebben op de ontwikkeling van technologie. Toch zijn er nog tientallen andere organisaties, zoals Red Hat's Project Atomic (voor gecombineerde Docker/Kubernetes-stacks) en het Open Container Initiative van de Linux Foundation, dat tot doel heeft open industriestandaarden rond containers te creëren. Voor Docker waren het Docker-afbeeldingen die de ontwikkelingswereld in vuur en vlam zetten. 'Containers hadden allemaal services op hetzelfde knooppunt geplaatst totdat Docker het idee van op afbeeldingen gebaseerde implementatie introduceerde,' zei Herrmann.


Klik op afbeelding voor volledige infographic. Afbeelding: The Docker Survey, 2016

Docker is ook een startup (opgericht in 2010 als dotCloud) die meer dan $ 180 miljoen aan durfkapitaal (VC) heeft opgehaald. Het bedrijf biedt een suite van Enterprise Container-as-a-Service (CaaS)-tools voor Docker-implementaties in datacenters en private clouds. Natuurlijk, als het gaat om enterprise container management, is Docker niet de enige in de ruimte. Red Hat biedt zijn eigen CaaS-suite met ontwikkelaarstools voor zijn Red Hat Enterprise Linux (RHEL), OpenShift en JBoss-producten. De laatste tijd doen ook steeds meer grote technologiebedrijven mee. In de zomer kocht Samsung Joyent en Triton, het CaaS-platform. Oracle kwam eind vorig jaar in actie door StackEngine over te nemen, en Cisco nam onlangs de Docker-startup ContainerX van de onderneming over.

Ten slotte zijn er de wolkenreuzen. Amazon Web Services (AWS), Microsoft Azure en Google Cloud Platform (GCP) hebben allemaal ingebouwde tools voor containerorkestratie en -beheer in hun respectievelijke cloud-infrastructuur-as-a-service (IaaS)-platforms. In een paar jaar tijd is de containerruimte behoorlijk vol geworden.

Welke zakelijke problemen kunnen containers oplossen?
Als het gaat om het implementeren van moderne applicatie-architecturen en DevOps-principes binnen een onderneming, zijn containers het antwoord op een aantal problemen. Vooral wanneer de organisatie verankerd is in legacy-technologie en traditioneel ontwikkelingsbeleid, zijn containers het eenvoudig te integreren platform daaronder dat de overgang kan vergemakkelijken en het de IT-afdeling gemakkelijk maakt.

'Op dit moment zien we containerisatie als de meest praktische manier om cloud, DevOps en microservices in je omgeving te introduceren. Containers integreren natuurlijk met de technologieën die je al hebt', zegt Herrmann.

Rich Sharples, Senior Director of Product Management for Middleware bij Red Hat, zei dat het allemaal draait om het leveren van kwaliteitssoftware met een sneller ritme. Alle bedrijven willen software sneller uitbrengen om op hun eigen markten te kunnen concurreren, en die druk valt vaak op een overbelaste IT-afdeling. Sharples zei dat containers een manier zijn om applicaties en services te produceren die sneller kunnen worden gewijzigd, of het nu gaat om het toevoegen van een nieuwe functie of een kritieke beveiligingsoplossing, terwijl de kwaliteit behouden blijft. Hij sprak ook over gecontaineriseerde infrastructuur als de brug om ondernemingen klaar te maken voor microservices.

'We hebben dit ontwerpprincipe: we kunnen het ons niet veroorloven om applicaties achter te laten', zegt Sharples. 'We bevinden ons in deze wonderbaarlijke nieuwe wereld van DevOps en agile softwareontwikkeling. Maar bedrijven kunnen niet al hun applicaties herschrijven om zich bij de partij aan te sluiten. Hoe brengen we ze in de richting van deze nieuwe ideeën?

'Investeren in platforms zoals containers is een manier om ervoor te zorgen dat de organisatie klaar is om iets als microservices uit te bouwen. Microservices en containers samen is waar de echte kracht zit. Er is niets interessants aan een enkele microservice; alleen in meervoud zie je dit samenwerkende netwerk opgebouwd uit losse brokjes functionaliteit.'


Afbeelding tegoed: Docs.Docker.com

Bij het nadenken over investeren in en adopteren van containertechnologie, zei Sharples dat het niet alleen een technologische beslissing is. Hij legde uit dat je voor een succesvolle overgang naar DevOps met containers en microservices de architectuur, de onderliggende platforms en agile processen nodig hebt.

'Dit is niet alleen een technologische beslissing', zegt Sharples. 'Je moet nadenken of je organisatie er klaar voor is, of je bepaalde softwareleveringsproblemen hebt die je moet oplossen, en begrijpen hoe de zakelijke drijfveren rond automatisering en DevOps eruitzien. Begrijp uw belangrijkste vereisten, kijk naar de behoeften van verschillende projecten en beslis vervolgens welke combinatie van cloud, applicatiearchitectuur en containertechnologie dit mogelijk maakt.'

Herrmann gaf enterprise IT-afdelingen drie adviezen bij het kijken naar hoe containers in hun organisatie passen:

1. Aan de slag
Volgens Herrmann is de combinatie van DevOps, agile, containers, microservices niet alleen een geïsoleerde technologische verandering. 'Het is een reis die leidt tot een behoorlijk belangrijke transformatie in hoe uw bedrijf zal werken', zei hij. 'Mijn eerste advies is om aan de slag te gaan omdat je concurrenten dat zijn. Early adopters de puzzelstukjes in elkaar laten zetten is de verkeerde strategie, want dan haal je de achterstand misschien niet in.'

2. Alomvattende visie
Herrmann adviseerde om containers vanuit een meer holistisch oogpunt te benaderen. 'Kies je belangrijkste doel,' zei hij. 'De mogelijkheid om software sneller op te leveren is een mooi uitgangspunt. Bedenk vanuit die ene doelstelling hoe je je organisatie in het proces brengt en structureer dit werk zonder risico en churn voor je bestaande bedrijfsvoering.'

3. Ecosysteem
Veel ondernemingen bereiken het punt waarop ze worden beperkt door legacy-architectuur, processen en platforms, benadrukte Herrmann. 'Je kunt de architectuur niet veranderen zonder na te denken over de platforms waarop je wilt vertrouwen', zei hij. 'Dan is de vraag: met wie werk ik samen? Met wie praat ik? Onze aanbeveling is om te zoeken naar bedrijven die niet alleen kunnen helpen met de technologische problemen, maar die de transformatie op al deze dimensies kunnen beheren: technologie, proces, helemaal tot organisatie. Als je te maken hebt met cloud, DevOps, containers en microservices bij elkaar, wil je vertrouwen op een ecosysteem dat je kan helpen om in korte tijd succes te boeken en je te behoeden voor doodlopende wegen.'

Meer verhalen

Problemen met het sorteren van tv-programma's op iOS-apparaten oplossen

Als je je iOS-apparaat hebt gevuld met televisieprogramma's van bronnen buiten iTunes, is het je misschien opgevallen dat veel programma's verkeerd worden gesorteerd. Los het sorteerprobleem op door de metadata van de show te wijzigen.

Bureaubladplezier: lettertypen in runenstijl

Meestal zijn gewone lettertypen precies wat u nodig hebt voor documenten, uitnodigingen of het toevoegen van tekst aan afbeeldingen. Maar wat als u in de stemming bent voor iets ongewoons of unieks om die perfecte touch toe te voegen? Als je van schrijven in een oudere runenstijl houdt, vind het dan leuk om nieuwe favorieten voor je verzameling te vinden met

Hoe MP3-ondersteuning aan Audacity toe te voegen (om op te slaan in MP3-formaat)

Je hebt misschien gemerkt dat de standaardinstallatie van Audacity geen ingebouwde ondersteuning voor MP3's heeft vanwege licentieproblemen. Hier leest u hoe u het in een paar eenvoudige stappen heel eenvoudig zelf gratis kunt toevoegen.

How-To Geek krijgt de Microsoft MVP Award, dankzij jou

De How-To Geek heeft voor het tweede jaar op rij een Microsoft MVP-prijs gewonnen, en dat is allemaal te danken aan jullie, onze geweldige lezers, die de site draaiende houden. Ga met ons mee voor wat wederzijdse schouderklopjes en wat vreselijke fotografie van alle award-dingen.

MS Notepad-vervanging Metapad keert terug met een nieuwe bètaversie

Na negen lange jaren is Metapad teruggekeerd uit het verre verleden met een nieuwe versie. Ontwikkelaar Alexander Davidson is weer begonnen met het werk aan deze klassieke Kladblok-vervanging.

Spybot Search and Destroy nu beschikbaar als draagbare app (PortableApps.com)

Is Spybot Search & Destroy een integraal onderdeel van uw anti-malwarearsenaal? Tot nu toe moest je het altijd lokaal op een machine installeren om het te gebruiken, maar nu niet meer. De goede mensen van portableapps.com hebben een por...

Vraag How-To Geek: een schijf klonen, het formaat van statische Windows wijzigen en snelkoppelingen voor systeemfuncties maken

Deze week bekijken we hoe je een harde schijf kunt klonen voor gemakkelijke back-up of duplicatie, hoe je hardnekkige statische vensters kunt verkleinen en snelkoppelingen kunt maken voor tientallen Windows-functies.

ShapeShifter: wat zijn dromen? [Video]

Als u zich de tijd herinnert dat computergegenereerde afbeeldingen beperkt waren tot blokkerige bitmaps, wordt u waarschijnlijk net zo gehypnotiseerd door gelikte CGI-montages als wij. Vandaag hebben we een prachtige video van designhuis CHRLX om te delen.

Botten, klokken en tellers; Een blik op de eerste 35.000 jaar computergebruik

Als we aan computers denken, denken we meestal aan het heden (en misschien aan de trage computers van de afgelopen decennia), maar de geschiedenis van rekenapparatuur gaat veel verder terug en omvat een scala aan interessante innovaties.

HTG Projects: maak een Pop Art Sci-Fi-poster met een inkjetprinter

Wil je je huis decoreren met coole kunstwerken? Pak een paar van je favoriete Sci-Fi-foto's en een paar verrassend eenvoudige tools, en maak binnen enkele minuten een poster in Pop Art-stijl.