Containerbeheer is het georganiseerde proces van het maken, implementeren, schalen en beheren van containers met behulp van containerbeheersoftware, zoals Kubernetes of Docker Swarm.
Met containers kunnen ontwikkelaars onafhankelijke applicaties bouwen die zijn verpakt met een besturingssysteem dat in elke omgeving kan worden uitgevoerd. Ze verkorten de testtijd en stellen IT-operaties in staat om snel applicaties in een operationele productieomgeving te implementeren. Containerbeheer biedt gebruikers de interface, bedieningselementen en mechanismen om op efficiënte wijze applicatiecontainers te creëren, toe te voegen, te implementeren, te vervangen, te verdelen en op en neer te schalen.
Een container is een kleine geïsoleerde runtime-omgeving die alles bevat wat een toepassing nodig heeft om te functioneren, zoals bestanden, bibliotheken, oproepen en verbindingen met de kernel van het besturingssysteem. De ontwikkelomgeving van een applicatie kan heel anders zijn dan de productieomgeving waarin deze moet draaien, en deze verschillen veroorzaken fouten en onvoorspelbaar gedrag in applicaties. Containers ronden code en alle afhankelijkheden af, zodat ze voorspelbaar en betrouwbaar werken in elke computeromgeving. Een container is zelfs geïsoleerd van een andere container, tenzij deze een specifieke code heeft om verbinding te maken.
Door de modulaire eigenschap van een container kunnen ontwikkelaars snel nieuwe code schrijven of bestaande code repareren zonder de hele applicatie opnieuw te hoeven bouwen. IT-operaties kunnen de update implementeren met minimale uitvaltijd. De kleine omvang, meestal in de tientallen megabytes, kan soms een groot aantal containers vereisen om de volledige functionaliteit van een complexe applicatie en zijn vele functies te bieden. Google beheert bijvoorbeeld miljarden containers die zijn webservices aandrijven. Om al deze containers die in complexe gedistribueerde systemen worden ingezet op een georganiseerde en efficiënte manier te overzien en te controleren, is containerbeheer vereist.
Zonder een containerbeheersysteem moeten gebruikers handmatig en individueel containers voor hun applicaties maken, nieuwe implementeren, oudere versies vervangen, hun status volgen en de container-applicaties omhoog of omlaag schalen, afhankelijk van de beschikbare computerbronnen. Containerbeheer automatiseert veel van deze processen. Het vereenvoudigt de reproductie, implementatie en planning van een groot aantal containers. Meer gespecialiseerd containerbeheer kan containerorkestratie bieden. Het geeft gebruikers extra automatiseringsfuncties voor het configureren van benodigde componenten en het implementeren van containerclusters die nodig zijn in verschillende omgevingen.
Containerbeheersystemen bieden gebruikers een middel om de gezondheid van containers in productie te bewaken, defecte containers te vervangen en vastgelopen containers opnieuw te starten. Ze bieden ook een mechanisme om de netwerk- en beveiligingscomponenten van containers te beheren. De systemen zijn een essentiële tool geworden, vooral voor organisaties die DevOps gebruiken. Ze versnellen de levenscyclus van een applicatie van ontwikkeling tot productie en verlagen de operationele kosten. Containerbeheersystemen zijn beschikbaar als open source en eigen commerciële software.
Sommige containerbeheersystemen zijn:
- Kubernetes (grote cloudservices zoals Amazon, Azure en Google bieden Kubernetes-versies voor hun omgevingen)
- Docker Swarm
- IBM RedHat OpenShift
- boer
- Cloudgieterij
- VMware vSphere geïntegreerde containers