Wat is CaaS? Eenvoudiger containerbeheer

Aangezien moderne, gecontaineriseerde applicaties populair blijven bij organisaties, was het slechts een kwestie van tijd voordat de grote leveranciers containerinfrastructuur en beheer 'as-a-service' gingen aanbieden.

Het gebruik van containers neemt sterk toe bij bedrijven over de hele wereld, waarbij 65 procent van de organisaties aangeeft Docker-containers te gebruiken en 58 procent op de een of andere manier het Kubernetes-orkestratiesysteem gebruikt, volgens Flexera's laatste 2020 State of Cloud-rapport.

Gebrek aan middelen en expertise worden vaak genoemd als de belangrijkste uitdagingen bij het gebruik van containers voor het bouwen en onderhouden van applicaties. Het zou dus geen verrassing moeten zijn dat ontwikkelaars zich steeds meer wenden tot de automatisering die wordt geboden door het aanbod van containers-as-a-service (CaaS), waarbij de drie grote cloudproviders voorop lopen.

Containers-as-a-service, of CaaS, gedefinieerd

Met CaaS bieden cloudleveranciers in wezen een gehoste container-orkestratie-engine - meestal gebaseerd op het superpopulaire open source-project Kubernetes, dat is ontstaan ​​bij Google - om containers te implementeren en uit te voeren, clusters te beheren, schaal- en storingsbeheer te automatiseren en de gemeenschappelijke infrastructuur te onderhouden laag, inclusief governance en beveiliging.

Over het algemeen worden alle functies voor netwerken, load balancing, monitoring, logging, authenticatie, beveiliging, autoscaling en continue integratie / continue levering (CI / CD) verzorgd door het CaaS-platform.

Hierdoor kunnen organisaties profiteren van de voordelen van een cloudinfrastructuur, terwijl tegelijkertijd wordt voorkomen dat er een vendor lock-in ontstaat die gepaard gaat met uw typische platform-as-a-service (PaaS), zoals AWS Elastic Beanstalk, Azure App Service, of Google App Engine - aangezien de containers zelf een eenvoudige portabiliteit in verschillende omgevingen mogelijk maken. 

Als containers de manier zijn waarop u wilt gaan, dan komt het verschil tussen CaaS en draaien op klassieke Infrastructure-as-a-Service (IaaS) neer op de vraag of uw organisatie over de middelen en vaardigheden beschikt om Kubernetes (of andere containerorkestratie) te implementeren en te beheren. layer) zelf, of zouden er baat bij hebben door dat over te laten aan een cloudprovider. De beslissing kan ook gaan over of uw containeromgeving meerdere clouds en / of on-prem-omgevingen moet omvatten. Een aantal leveranciers biedt CaaS-platforms aan die zowel on-prem als in de cloud kunnen worden ingezet (zie hieronder). 

"U kunt dingen op infrastructuurniveau beheren en de orchestrator zelf opzetten, of u kunt een containerplatform gebruiken dat de onderliggende infrastructuur afhandelt en een vooraf geïnstalleerde orchestrator biedt die klaar staat om uw containers te implementeren en te schalen", schreef voormalig Deutsche Bank en BBC-ontwikkelaar Rob Isenberg in zijn boek Docker for Rails Developers, uitgegeven door O'Reilly.

De voordelen

Het draaien van uw containers op CaaS is vergelijkbaar met het draaien van uw virtuele machines op IaaS: de belangrijkste voordelen zijn de snelheid van implementatie en het gebruiksgemak, evenals de eenvoud van het pay-as-you-go-cloudmodel en de eerder genoemde vrijheid van vendor lock -in.

Door uw containerinfrastructuur over te laten aan een cloudleverancier, kunt u aan de slag zonder te investeren in uw eigen hardware en zonder uw eigen Kubernetes-clusters (of ander containerorkestratiesysteem) te bouwen en te beheren. Door applicaties in een container te plaatsen, kunt u applicaties bovendien gemakkelijker migreren naar verschillende omgevingen of ecosystemen van leveranciers, waardoor u meer flexibiliteit en schaalbaarheid krijgt.

Dit alles biedt ook die uiterst belangrijke kansen voor kostenbesparing, aangezien containers beter zijn uitgerust om horizontaal te schalen naargelang de vraag, waardoor organisaties alleen hoeven te betalen voor de cloudresources die ze gebruiken. Containers zijn veel lichter dan VM's, wat betekent dat ze minder middelen vergen, wat vaak leidt tot snelheidswinst en kostenbesparingen.

Een ander voordeel is de consistentie van instrumentatie en logboekregistratie, aangezien het isoleren van individuele services in containers een effectievere logboekaggregatie en gecentraliseerde bewaking mogelijk maakt via het populaire zijspan-implementatiemodel.

Het migreren van traditionele apps naar containers blijft een belangrijke barrière voor acceptatie, zelfs wanneer ze op CaaS worden uitgevoerd, zoals wordt aangehaald door 34 procent van de respondenten in het State of Cloud-rapport van Flexera. Migreren naar containers houdt vaak in dat monolithische applicaties worden opgesplitst in microservices, wat voor grotere, oudere organisaties een grote culturele en technische verschuiving kan zijn die niet lichtvaardig moet worden opgevat.

[Ook op: Wat is Docker? De vonk voor de containerrevolutie]

Toonaangevende leveranciersopties

De meeste grote cloudproviders hebben CaaS-aanbiedingen en er zijn verschillende andere providers die op zoek zijn naar actie.

Marktleider in cloudservices, Amazon Web Services (AWS), heeft een sterke acceptatie gezien van zijn Kubernetes-loze Elastic Container Service (ECS) en Elastic Kubernetes Service (EKS). Evenzo is de acceptatie van Azure Kubernetes Service aanzienlijk gestegen volgens de analyse van Flexera, net als Google Kubernetes Engine (GKE).

Alle drie de cloudreuzen bieden nu ook serverloze Kubernetes-services, met AWS ECS op Fargate, Google Cloud Run op GKE en Azure Container Instances. In tegenstelling tot EKS, AKS en GKE nemen deze services de noodzaak weg om serverbeheertaken uit te voeren en zijn ze ideaal voor gebruikssituaties op aanvraag.

Veel van de containerbeheermogelijkheden van Google Cloud vallen nu onder de Anthos-paraplu, die het beheer van containergebaseerde applicaties mogelijk maakt in de lokale infrastructuur en de grote openbare clouds (Google Cloud Platform en AWS nu, met Azure-ondersteuning onderweg). Anthos combineert GKE voor cloud-workloads, GKE On-Prem en de Anthos Config Management-console, die gecentraliseerd beheer, beleid en beveiliging mogelijk maakt voor hybride en multicloud Kubernetes-implementaties.

Afgezien van de 'grote drie' cloudleveranciers, hebben leveranciers zoals IBM / Red Hat, VMware, SUSE / Rancher, Canonical, D2iQ (voorheen Mesosphere), Rackspace, Oracle, HPE, Alibaba, Huawei en Tencent allemaal een beetje de smaak van een managed CaaS-optie. Een aantal van deze aanbiedingen kan op locatie, in openbare clouds of beide worden geïmplementeerd. 

Welk platform is het beste?

Industrie-analist Gartner heeft geen magisch kwadrant voor CaaS-providers, maar in zijn nieuwste Competitive Landscape: Public Cloud Container Services-rapport van Wataru Katsurashima identificeert het GKE van Google als de toonaangevende beheerde Kubernetes-optie.

Analisten bij Forrester plaatsten AWS op de leidende positie van de meest recente New Wave for Public Cloud Enterprise Container Platforms, in Q3 2019, met Microsoft en Google er vlak achter. Opgemerkt moet worden dat het Forrester-rapport slechts zeven leveranciers omvatte en strikt gericht is op implementaties in de openbare cloud.

AWS "loopt voorop met implementatieopties, beveiliging en diepgaande integraties", aldus de Forrester-auteurs Dave Bartoletti en Charlie Dai. "Met een breed scala aan volledig beheerde (en serverloze) Kubernetes (K8s) verbruiksopties en de meeste containers die rechtstreeks in zijn cloudinfrastructuur worden geïmplementeerd, blijft AWS innoveren en zijn containerplatform diep integreren met zijn toonaangevende beveiligings- en netwerkfuncties."

Het Forrester-rapport spoorde zowel Microsoft als Google aan om hun containerplatforms te vereenvoudigen. Microsoft werd geprezen om zijn sterkere ontwikkelaarservaring en wereldwijde bereik, maar klopte voor zijn complexiteit - wat een veel voorkomend refrein was in het rapport. Google werd geprezen om zijn diepgaande Kubernetes-expertise en zijn inspanningen om multicloudomgevingen te doorkruisen, maar werd eveneens bekritiseerd vanwege de complexiteit. 

Dat gezegd hebbende, blijft AWS EKS het meest gebruikte platform voor containerbeheer, volgens de CNCF Survey 2019, met GKE, Docker EE / CE en AKS achterop.

Flexera's 2020 State of Cloud Report koppelt het bedrijfsgebruik van AWS EKS / ECS op 55 procent, terwijl nog eens 23 procent van de enterprise-respondenten van plan is om deze CaaS-opties in de toekomst te gebruiken. De acceptatie van Azure Kubernetes Service bereikte 50 procent, terwijl nog eens 26 procent van plan is om AKS in de toekomst te gebruiken. En Google Kubernetes Engine bereikte 26 procent, waarbij 27 procent van de respondenten van ondernemingen van plan was GKS te gebruiken. Volgens het Flexera-rapport overtreft het zelfbeheerde Kubernetes echter nog steeds alle opties bij 63 procent van de respondenten van ondernemingen.

Andere bronnen

De belangrijkste informatiebronnen over CaaS zijn de leveranciers zelf, waardoor het moeilijk is om een ​​weloverwogen, onbevooroordeelde keuze te maken. Zoals hierboven beschreven, hebben zowel Forrester als Gartner diepe duiken in het landschap gemaakt, maar hun lens is meestal waarop leveranciers opvallen, in plaats van hoe ze aan de slag kunnen met CaaS in productie.

Er zijn ook nog niet veel boeken over het onderwerp, maar het Software Architect's Handbook van O'Reilly geeft een goed overzicht.

Ten slotte staat Docker al jaren in het middelpunt van containers en containerbeheer, en het bedrijf heeft goede videocontent over het onderwerp, waaronder deze sessie met technisch personeelslid Patrick Chanezon en dit overzicht van Sandor Klein, vice-president voor Europa , Midden-Oosten en Afrika.