Accueil » News » Gérez plus facilement les conteneurs avec CaaS

Gérez plus facilement les conteneurs avec CaaS

  • par

Les plates-formes Containers-as-a-Service (CaaS) permettent aux développeurs de déployer plus facilement des conteneurs Docker et de les assembler dans des applications, généralement à l’aide de Kubernetes.

Les applications de conteneurs modernes sont toujours très appréciées des entreprises. Rien d’étonnant à la montée en puissance des offres de gestion de conteneurs et d’infrastructure «as-a-service» des principaux fournisseurs. Partout dans le monde, l’utilisation des conteneurs augmente rapidement parmi les entreprises: selon le dernier rapport State of Cloud 2020 de Flexera, 65% des entreprises utilisent d’une manière ou d’une autre des conteneurs Docker et 58% utilisent Kubernetes. système d’orchestration. Le manque de ressources et d’expertise est souvent cité comme le plus grand défi lors de l’utilisation de conteneurs pour créer et maintenir des applications. Sans surprise, les développeurs se tournent de plus en plus vers l’automatisation offerte par les offres de «conteneurs en tant que service» (CaaS), un domaine où les trois principaux fournisseurs de cloud ouvrent leurs portes. façon.

Conteneurs en tant que service de CaaS

L’offre CaaS essentiellement destinée aux fournisseurs de cloud consiste à fournir un moteur d’orchestration de conteneurs hébergé, généralement basé sur le très populaire projet open source Kubernetes initié par Google, pour déployer et exécuter des conteneurs, gérer des clusters , automatisez la mise à l’échelle et la gestion des perturbations et la maintenance de la couche d’infrastructure commune, avec gouvernance et sécurité. En règle générale, toutes les fonctions de mise en réseau, d’équilibrage de charge, de surveillance, de journalisation, d’authentification, de sécurité, de mise à l’échelle automatique et d’intégration continue / livraison continue (CI / CD) sont prises en charge par la plate-forme CaaS. Cette plate-forme permet aux entreprises de profiter des avantages de l’infrastructure cloud sans risquer le verrouillage que les fournisseurs imposent généralement aux plates-formes en tant que service (PaaS), telles que AWS Elastic Beanstalk, Azure App Service ou Google App. Moteur, car les conteneurs eux-mêmes sont facilement transportables entre différents environnements.

Pour une entreprise souhaitant utiliser des conteneurs, la différence entre un CaaS et une infrastructure en tant que service (IaaS) traditionnelle réside dans les ressources et les compétences nécessaires pour exécuter Kubernetes (ou une autre couche d’orchestration de conteneurs): la question est de savoir s’ils gèrent cela eux-mêmes. peut supposer s’il est dans l’intérêt de confier cette tâche à un fournisseur de cloud. Une autre question à considérer pour décider si l’environnement du conteneur doit couvrir plusieurs clouds et / ou environnements sur site. Plusieurs fournisseurs proposent des plates-formes CaaS qui peuvent être déployées aussi bien localement que dans le cloud (voir ci-dessous). «Vous pouvez gérer les choses au niveau de l’infrastructure et configurer vous-même l’orchestrateur, ou utiliser une plate-forme de conteneur qui gère l’infrastructure sous-jacente et fournit un orchestrateur préinstallé prêt à être déployé et exécuté. faites évoluer vos conteneurs », a écrit Rob Isenberg, ancien développeur à la Deutsche Bank et à la BBC, dans son livre« Docker for Rails Developers »publié par O’Reilly.

Les avantages de CaaS

Le contrôle des conteneurs sur un Container as a Service (CaaS) est similaire à l’exploitation de machines virtuelles sur une Infrastructure as a Service (IaaS): les principaux avantages sont la rapidité de mise en œuvre et la facilité d’utilisation, ainsi que la simplicité du paiement à la demande. modèle cloud you-go et l’absence de verrouillage des fournisseurs, comme mentionné ci-dessus. En sous-traitant votre infrastructure de conteneurs à un fournisseur de cloud, l’entreprise peut continuer à fonctionner sans investir dans son propre matériel et sans créer et exploiter ses propres clusters Kubernetes (ou autre système d’orchestration de conteneurs). ). De plus, le placement des applications dans des conteneurs facilite leur migration vers différents environnements ou écosystèmes de fournisseurs, ce qui leur confère une plus grande flexibilité et évolutivité. De bout en bout, ces avantages ouvrent un énorme potentiel de rentabilité car les conteneurs sont mieux équipés pour évoluer horizontalement en fonction de la demande, ce qui signifie que l’entreprise ne doit payer que pour les ressources cloud qu’elle utilise. Les conteneurs sont beaucoup plus légers que les machines virtuelles, ce qui signifie qu’ils nécessitent moins de ressources, ce qui permet souvent d’économiser de la vitesse et de réduire les coûts.

Un autre avantage est la cohérence de l’instrumentation et de la journalisation, car la séparation des services individuels dans des conteneurs permet une agrégation de journaux plus efficace et une surveillance centralisée à l’aide du modèle d’implémentation de barre latérale populaire. La migration des applications traditionnelles vers des conteneurs reste un obstacle majeur à l’adoption, même lorsqu’elles sont exécutées sur CaaS, comme 34% des personnes interrogées l’ont signalé dans le rapport sur l’état du cloud 2020 de Flexera. La migration vers des conteneurs implique souvent la division des applications monolithiques en microservices, ce qui peut entraîner des changements culturels et techniques majeurs pour les entreprises plus grandes et plus anciennes qui ne doivent pas être pris à la légère.

Principales options CaaS

La plupart des grands fournisseurs de cloud proposent des offres CaaS et plusieurs autres fournisseurs tentent de s’implanter dans ce secteur. Amazon Web Services (AWS), leader du marché des services cloud, connaît un grand succès avec son Elastic Container Service (ECS) sans Kubernetes et Elastic Kubernetes Service (EKS). De même, selon le rapport Flexera, l’adoption d’Azure Kubernetes Service est en augmentation, tout comme l’adoption de Google Kubernetes Engine (GKE). Les trois géants du cloud proposent également des services Kubernetes sans serveur, tels que AWS ECS sur Fargate, Google Cloud Run sur GKE et Azure Container Instances. Contrairement à EKS, AKS et GKE, ces services simplifient la gestion des serveurs et conviennent parfaitement aux applications grand public à la demande.

De nombreuses fonctionnalités de gestion de conteneurs de Google Cloud sont désormais sous l’égide d’Anthos, la plate-forme cloud hybride et multicloud basée sur Kubernetes de Google qui permet la gestion d’applications basées sur des conteneurs sur site et sur l’infrastructure. grands clouds publics (Google Cloud Platform, AWS et Azure à venir). Anthos combine GKE pour les charges de travail cloud, GKE On-Prem et la console Anthos Config Management, qui permet une gestion, une politique et une sécurité centralisées dans les déploiements Kubernetes hybrides et multicloud. Outre les «trois grands» fournisseurs de cloud, des fournisseurs tels que IBM / Red Hat, VMware, SUSE / Rancher, Canonical, D2iQ (anciennement Mesosphere), Rackspace, Oracle, HPE, Alibaba, Huawei et Tencent proposent tous une option CaaS gérée. . Beaucoup de ces offres peuvent être déployées sur site, dans des clouds publics ou les deux.

Le meilleur CaaS

Gartner n’a pas publié de Magic Quadrant pour les fournisseurs de CaaS, mais dans son dernier rapport, Competitive Landscape: Public Cloud Container Services, Wataru Katsurashima classe le GKE de Google comme la meilleure option de gestion Kubernetes. Dans leur dernière enquête, « New Wave for Public Cloud Enterprise Container Platforms », publiée au troisième trimestre 2019, les analystes de Forrester ont placé AWS en premier, suivi de Microsoft et Google. Cependant, il convient de noter que le rapport de Forrester ne comprend que sept fournisseurs et se concentre uniquement sur le déploiement du cloud public. Selon Dave Bartoletti et Charlie Dai, les auteurs du rapport Forrester, «AWS est un leader avec ses options de déploiement, sa sécurité et ses intégrations approfondies». Ils ajoutent: «Avec leur large gamme d’options de consommation Kubernetes (K8) entièrement gérées (et sans serveur) et la plupart des conteneurs déployés directement dans l’infrastructure cloud, AWS continue d’innover et d’intégrer profondément sa plate-forme. avec ses principales fonctions de sécurité et de réseau ».

Dans leur rapport, les analystes de Forrester exhortent également Microsoft et Google à simplifier leurs plates-formes de conteneurs. Tout en saluant le développement accru de Microsoft et sa portée mondiale, ils en regrettent la complexité, une critique assez souvent soulignée dans le rapport. Ces mêmes analystes louent Google pour son expertise approfondie de Kubernetes et ses efforts pour percer les environnements multi-cloud, mais critiquent également sa complexité. Cela dit, selon une enquête réalisée en 2019 par la Cloud Native Computing Foundation (CNCF), EKS d’AWS reste la plate-forme de gestion de conteneurs la plus utilisée, immédiatement suivie par GKE, Docker EE / CE et AKS. Selon le rapport Flexera State of the Cloud 2020, 55% des entreprises utilisent les plates-formes EKS / ECS d’AWS et 23% des entreprises interrogées prévoient d’utiliser cette offre CaaS à l’avenir. 50% des entreprises ont utilisé Azure Kubernetes Service et 26% des entreprises interrogées prévoient d’utiliser AKS à l’avenir. 26 des entreprises utilisent le moteur Google Kubernetes et 27% des entreprises interrogées prévoient d’utiliser GKS à l’avenir. Pourtant, selon le rapport Flexera, avec 63% d’acceptation parmi les entreprises interrogées, Kubernetes autogéré surpasse toujours toutes les offres CaaS.

Sources CaaS

Les principales sources d’information sur CaaS sont disponibles auprès des prestataires eux-mêmes, ce qui ne facilite pas un choix éclairé et impartial. Comme indiqué ci-dessus, Forrester et Gartner ont mené une analyse approfondie du sujet, mais l’objectif de leurs études est généralement de découvrir quels fournisseurs se démarquent, plutôt que comment se lancer en production avec CaaS. Il reste peu de livres sur le sujet, mais le livre « Software Architect’s Handbook », publié par O’Reilly, en donne un bon aperçu.