Accueil
Thèmes
Qu'est-ce que l'orchestration de conteneurs ?
L’orchestration de conteneurs automatise et simplifie la mise à disposition, le déploiement et la gestion des applications conteneurisées.
La plateforme d’orchestration de conteneurs la plus populaire à l’heure actuelle est Kubernetes, c’est pourquoi la plupart des grands fournisseurs de services de cloud public proposent des services Kubernetes gérés, notamment Amazon Web Services (AWS), Google Cloud Platform, IBM Cloud et Microsoft Azure. Il existe néanmoins d’autres outils sur le marché, tels que Docker Swarm et Apache Mesos.
Connectez et intégrez vos systèmes pour préparer votre infrastructure à l’IA.
Les conteneurs sont des composants d’application légers et exécutables qui regroupent le code source de l’application et toutes les bibliothèques et dépendances du système d’exploitation nécessaires à l’exécution du code dans n’importe quel environnement.
La possibilité de créer des conteneurs existe depuis des décennies, mais elle s’est démocratisée en 2008 lorsque Linux a inclus la fonctionnalité de conteneur au sein de son noyau. Elle a ensuite été largement généralisée avec l’arrivée de la plateforme de conteneurisation open source Docker en 2013. (Docker est si populaire que les termes « conteneurs Docker » et « conteneurs » sont souvent utilisés de manière interchangeable).
Parce qu’ils sont plus petits, plus économes en ressources et plus portables que les machines virtuelles, les conteneurs, et plus précisément les microservices conteneurisés ou les fonctions sans serveur, se sont imposés de facto comme les unités de calcul des applications cloud natives modernes. (Pour en savoir plus sur les avantages des conteneurs, consultez la présentation interactive ci-dessous.)
Il est assez facile de déployer et de gérer manuellement un petit nombre de conteneurs. Or, le nombre d’ applications conteneurisées augmente rapidement dans la plupart des organisations, et leur gestion doit se faire à grande échelle. En particulier, dans le cadre d’une intégration continue/distribution continue (CI/CD) ou d’un pipeline DevOps, cela s'avère impossible sans automatisation.
L’orchestration de conteneurs permet d’automatiser les tâches liées au déploiement et à l’exécution d’applications et de services conteneurisés. Selon une récente étude d’IBM, 70 % des développeurs qui ont recours aux conteneurs déclarent utiliser une solution d’orchestration, et 70 % d’entre eux déclarent utiliser un service entièrement géré (dans le cloud).
Bien que les méthodologies et les capacités diffèrent d’un outil à l’autre, l’orchestration de conteneurs se déroule essentiellement en trois étapes (ou en un cycle, lorsqu’elle fait partie d’un pipeline agile ou DevOps itératif).
La plupart des outils d'orchestration de conteneurs prennent en charge un modèle de configuration déclaratif : un développeur écrit un fichier de configuration (en YAML ou JSON selon l'outil) qui définit un état de configuration souhaité. L’outil d’orchestration qui exécute le fichier fait appel à sa propre intelligence pour atteindre cet état. En règle générale, le fichier de configuration :
L’outil d’orchestration planifie le déploiement des conteneurs (et des répliques de conteneurs pour plus de résilience) sur un hôte. choisit le meilleur hôte en fonction de la capacité CPU et de la mémoire disponibles, ou d’autres exigences ou contraintes spécifiées dans le fichier de configuration.
Une fois les conteneurs déployés, l'outil d'orchestration gère le cycle de vie de l' application conteneurisée en fonction du fichier de définitions des conteneurs (souvent un fichier Docker). Ces définitions incluent :
Il apparaît assez clairement que le principal avantage de l'orchestration de conteneurs est l'automatisation , et pas seulement parce qu'elle permet de gérer un vaste parc d' applications conteneurisées de manière beaucoup plus simple et efficace. L’automatisation donne la possibilité d’adopter une approche agile ou DevOps, des cycles de développement et de déploiement rapides et itératifs, et donc de publier de nouvelles fonctionnalités et capacités plus rapidement.
En outre, l’intelligence des outils d’orchestration améliore ou étend de nombreux avantages inhérents à la conteneurisation. Par exemple, l’automatisation de la sélection des hôtes et de l’allocation des ressources, sur la base d’une configuration déclarative, optimise l’utilisation des ressources informatiques, tandis que l’automatisation de la surveillance de l’état de santé et du réadressage des conteneurs optimise la disponibilité.
Comme indiqué ci-dessus, Kubernetes est la plateforme d’orchestration de conteneurs la plus populaire. Associé à d’autres outils de l’écosystème de conteneurs, Kubernetes permet aux entreprises de fournir une plateforme en tant que service (PaaS) hautement productive. Prendre en charge une grande partie des tâches et des problèmes liés à l’infrastructure et aux opérations dans le cadre du développement d’applications cloud natives . Ainsi, les équipes de développement peuvent se concentrer exclusivement sur le codage et l’innovation.
Les avantages offerts par Kubernetes par rapport à d’autres solutions d’orchestration résultent en grande partie de ses fonctionnalités plus complètes et plus sophistiquées dans plusieurs domaines, notamment :
Red Hat OpenShift on IBM Cloud exploite OpenShift dans des environnements publics et hybrides pour garantir vitesse, évolutivité, fiabilité et réactivité vis-à-vis du marché.
Avec IBM Cloud Satellite, vous pouvez lancer des services cloud cohérents où vous le souhaitez : sur site, en périphérie (edge) et dans des environnements de cloud public.
Ce produit permet d’exécuter des images de conteneurs, des tâches par lots ou du code source en tant que charges de travail sans serveur, le tout, sans dimensionnement, déploiement, mise en réseau ou mise à l’échelle.
Ce logiciel identifie automatiquement les bonnes actions d’allocation des ressources et le moment où elles doivent être réalisées pour que vos environnements Kubernetes et les applications vitales de votre entreprise obtiennent exactement ce dont ils ont besoin pour respecter vos SLO.
Une nouvelle étude d’IBM décortique l’essor fulgurant des conteneurs et de Kubernetes.
L’orchestration de conteneurs, qui permet de créer et de gérer des charges de travail à partir de n’importe quel endroit, joue un rôle essentiel dans les stratégies de cloud hybride ouvert.
Docker est une plateforme open source permettant de créer, de déployer et de gérer des applications conteneurisées.