We couldn't find a match for given <KEYWORD>, please try again.

Que sont les conteneurs réseau ?

Les conteneurs réseau désignent un mécanisme émergent de sandboxing d’applications utilisé à domicile et sur le réseau d’entreprise Web. On peut comparer ce concept aux machines virtuelles. Un environnement Linux complet avec ses propres utilisateurs, système de fichiers, processus et pile réseau est isolé à l’intérieur du conteneur de l’hôte et de tous les autres conteneurs. Toutes les applications à l’intérieur du conteneur sont autorisées à accéder ou à modifier les fichiers ou les ressources disponibles.

Il est possible d’exécuter plusieurs conteneurs en même temps, chacun avec ses propres installations et dépendances. Cela est particulièrement utile dans les cas où les nouvelles versions d’une application peuvent demander la mise à niveau d’une dépendance susceptible de provoquer des conflits avec d’autres dépendances d’applications exécutées sur le serveur. Contrairement aux machines virtuelles, les conteneurs partagent les ressources de l’hôte plutôt que de simuler entièrement tout le matériel sur l’ordinateur, ce qui rend les conteneurs plus petits et plus rapides que les machines virtuelles et réduit la surcharge. En particulier dans le contexte des applications à l’échelle du Web, les conteneurs ont été conçus pour remplacer les VM en tant que plate-forme de déploiement pour les architectures de microservices.

Les conteneurs présentent également la caractéristique de la portabilité. Par exemple, Docker, un moteur de conteneurs, permet aux développeurs de regrouper un conteneur et toutes ses dépendances. Ce package de conteneurs peut ensuite être téléchargé. Une fois téléchargé, le conteneur peut être exécuté immédiatement sur un hôte.

Fiche produit : VMware Container Networking with Antrea

Annonce de VMware Container Networking with Antrea pour Kubernetes

Fonctionnement des conteneurs réseau

Un conteneur réseau est une forme de virtualisation similaire aux machines virtuelles (VM) dans son concept, mais avec des différences. La méthode des conteneurs est une forme de virtualisation du système d’exploitation, contrairement aux VM, qui sont une forme de virtualisation matérielle.

Chaque machine virtuelle exécutée sur un hyperviseur possède son propre système d’exploitation, ses propres applications et bibliothèques, et peut encapsuler des données persistantes, installer un nouveau système d’exploitation, utiliser un système de fichiers différent de celui de l’hôte ou utiliser une version de noyau différente.

À l’inverse, les conteneurs sont une « instance en cours d’exécution » d’une image, une virtualisation éphémère du système d’exploitation qui effectue certaines tâches, puis est supprimée et oubliée. En raison de la nature éphémère des conteneurs, les utilisateurs du système exécutent beaucoup plus d’instances de conteneurs que les machines virtuelles nécessitant un espace d’adressage plus important.

Pour créer une isolation, un conteneur s’appuie sur deux fonctionnalités du noyau Linux : l’espace de nommage et les groupes de contrôle. Pour conférer au conteneur sa propre vue du système et l’isoler des autres ressources, un espace de nommage est créé pour chacune des ressources et dissocié du système restant. Les groupes de contrôle (Cgroups) sont ensuite utilisés pour surveiller et limiter les ressources système comme le CPU, la mémoire, les E/S de disque, le réseau, etc.

Avantages des conteneurs réseau

Les conteneurs sont de plus en plus adoptés et remplacent les VM en tant que plates-formes de microservices.

Les conteneurs présentent plusieurs avantages :

  • Exécuter des applications conteneurisées parallèlement aux charges de travail existantes : Les machines peuvent exécuter des applications conteneurisées aux côtés de machines virtuelles traditionnelles sur la même infrastructure, ce qui garantit flexibilité et rapidité.
  • Allier portabilité, sécurité, visibilité et gestion : En raison de la conception inhérente des conteneurs, elle renforce la sécurité via le sandboxing, la transparence des ressources avec l’hôte, la gestion des tâches et la portabilité de l’environnement d’exécution.
  • Exploiter l’infrastructure existante et évoluer facilement : Utilisez votre SDDC existant pour éviter la refonte coûteuse et chronophage de votre infrastructure qui se traduit par des silos. Ces silos apparaissent lorsque des départements distincts gèrent leur propre infrastructure informatique au sein d’une même entreprise. Cet « effet de silo » crée des problèmes lors du déploiement des règles informatiques et des mises à niveau à l’échelle de l’entreprise en raison des différences de configuration technique de chaque département. La réintégration des silos est un processus coûteux et chronophage qui peut être évité grâce à la mise en réseau des conteneurs.
  • Fournir aux développeurs une interface compatible avec Docker : Les développeurs qui connaissent déjà bien Docker peuvent concevoir des applications conteneurisées à l’aide d’une interface compatible avec Docker, puis les provisionner via l’interface utilisateur ou le portail de gestion en libre-service.

Utiliser les conteneurs réseau dans les déploiements d’applications à l’échelle du Web

Les conteneurs sont déployés dans le cadre de l’architecture de microservices dans les environnements d’entreprise pour encapsuler des tâches individuelles courantes pour les applications Web volumineuses. Chaque tâche peut avoir son propre conteneur, les conteneurs externes comme les API et les interfaces utilisateur sont ouverts à l’Internet public, les autres résident sur le réseau privé.

Le modèle des microservices offre des avantages :

  • Facilité de déploiement : Les configurations d’hôte peuvent être intégrées dans des conteneurs, ce qui les rend prêtes à l’emploi une fois déployées.
  • À usage unique : Les conteneurs sont conçus pour un démarrage et une mise au rebut rapides. En cas de panne de l’hôte, la remise en ligne des applications est aussi simple que celle d’un serveur de secours.
  • Tolérance aux pannes : Les conteneurs facilitent la redondance des bases de données et des serveurs Web. La copie d’un même conteneur sur plusieurs nœuds assure une haute disponibilité et une tolérance aux pannes.

Types de conteneurs réseau

Cinq types de conteneurs réseau sont utilisés aujourd’hui. Leurs caractéristiques sont centrées sur les modèles d’adresse IP par conteneur par rapport aux modèles basés sur l’adresse IP par pod et sur l’exigence de traduction d’adresse réseau (NAT) par rapport à l’absence de traduction.

  • Aucun : Le conteneur reçoit une pile réseau ; cependant, il lui manque une connexion externe. Ce mode est utile pour tester des conteneurs, préparer un conteneur pour une connexion réseau ultérieure et l’affecter à des conteneurs ne nécessitant pas de communications externes.
  • Pont : Les conteneurs couvrent un réseau hôte interne et sont autorisés à communiquer avec d’autres conteneurs sur le même hôte. Les conteneurs ne sont pas accessibles depuis l’extérieur de l’hôte. Le réseau en pont est le réseau par défaut pour les conteneurs Docker.
  • Hôte : Cette configuration permet à un conteneur créé de partager l’espace de nommage réseau de l’hôte, ce qui lui donne accès à toutes les interfaces réseau de l’hôte. La moins complexe des configurations de réseau externe est sujette à des conflits de ports en raison de l’utilisation partagée des interfaces réseau.
  • Couche sous-jacente : Les couches sous-jacentes ouvrent les interfaces hôtes directement sur les conteneurs exécutés sur l’hôte et suppriment le besoin de mappage de ports, ce qui les rend plus efficaces que les ponts.
  • Superposition : Les superpositions utilisent des tunnels réseau pour communiquer entre les hôtes, ce qui permet aux conteneurs de se comporter comme s’ils se trouvaient sur la même machine lorsqu’ils sont hébergés sur des hôtes différents.

Solutions et produits connexes

Antrea

Images et fichiers binaires signés avec prise en charge complète de Project Antrea pour l’entreprise

Connecter les conteneurs et Kubernetes

Connectez et protégez vos applications et microservices conteneurisés.

Réseau Cloud virtuel

Profitez de l’expérience du Cloud public dans votre Data Center avec le réseau Cloud virtuel