Contrôle du trafic et équilibrage de charge optimisés pour les environnements de conteneurs avec F5 et Red Hat
Virtualisation 2.0 : des machines virtuelles aux conteneurs
La technologie a largement bénéficié de la virtualisation, une approche qui permet de dissocier les logiciels des systèmes matériels sous-jacents. Les machines virtuelles (VM), premières composantes de la virtualisation, ont facilité la configuration, le déploiement et l’ajustement des charges de travail des serveurs.
Cependant, chaque machine virtuelle doit inclure un système d’exploitation (OS), ce qui la rend volumineuse et peu maniable. Malgré leurs avantages, les machines virtuelles sont lentes à démarrer, occupent beaucoup d’espace de stockage et sont difficiles à déplacer. En outre, les fonctionnalités des applications peuvent être limitées lors du déplacement de machines virtuelles d’un environnement à un autre, en raison des différences entre les systèmes d’exploitation invités et hôtes.
Représentant la prochaine évolution de la virtualisation, les conteneurs aident les entreprises à relever ces défis. Contrairement aux machines virtuelles, les conteneurs n’intègrent pas de couche de système d’exploitation invité et s’appuient sur le système d’exploitation de l’hôte. Ils permettent ainsi de dissocier l’application du système d’exploitation sous-jacent. Grâce à cette capacité, les conteneurs peuvent être lancés bien plus rapidement que les machines virtuelles. En outre, ils occupent beaucoup moins d’espace de stockage et sont plus faciles à migrer. En intégrant l’ensemble de leur environnement d’exécution, les conteneurs permettent aux applications de fonctionner de manière fiable lorsqu’elles sont déplacées d’un environnement informatique à un autre.
Cependant, le déploiement de conteneurs dans les environnements informatiques d’entreprise nécessite une plateforme de conteneurs robuste et bénéficiant d’un support. Cette présentation explique comment une solution de plateforme de conteneurs intégrée de F5 et Red Hat peut simplifier le déploiement de conteneurs en entreprise afin d’améliorer le développement et les performances des applications.
L’émergence des microservices et des conteneurs
Autrefois, les applications d’entreprise étaient volumineuses et monolithiques. Les mises à jour nécessitaient d’importantes modifications du code pour chaque fonction concernée, ainsi que pour toutes les fonctions affectées. Par conséquent, les applications n’étaient généralement mises à jour qu’une ou deux fois par an.
Face à l’accélération du monde des affaires, à la recherche constante d’agilité et de différenciation, ainsi qu’aux attentes croissantes des utilisateurs internes et externes, ces mises à jour lourdes et lentes ne suffisent plus.
Microservices
Les applications sont désormais décomposées en petits microservices distincts et déployées selon un modèle DevOps agile et continu. Au lieu de procéder à des refontes majeures nécessitant plusieurs mois de coordination entre différentes équipes de développement logiciel et d’exploitation des infrastructures, chaque microservice peut être mis à jour indépendamment, et de nouveaux microservices peuvent être ajoutés à tout moment.
Cependant, lorsque les machines virtuelles constituent le principal mécanisme de déploiement des microservices, un modèle DevOps n’est pas viable. Avec des centaines, voire des milliers de microservices par application, et chaque machine virtuelle intégrant un système d’exploitation, la surcharge imposée aux systèmes sous-jacents de calcul, de réseau et de stockage est tout simplement trop importante.
Conteneurs
En tant qu’alternative au déploiement de microservices basé sur des machines virtuelles, les conteneurs permettent de déployer plus rapidement et plus facilement les fonctions applicatives dans un environnement informatique, tout en réduisant considérablement la surcharge.
En plus de pallier les limites des machines virtuelles, les conteneurs contribuent également à concrétiser les promesses des microservices et du DevOps. Ils permettent aux développeurs de tester, déployer, mettre à l’échelle et remanier rapidement le code, avec une surcharge minimale. Les environnements basés sur des conteneurs sont dynamiques, flexibles et aussi dépourvus d’état que possible, ce qui permet aux développeurs d’améliorer les applications de manière itérative et continue — souvent dans le cadre d’un modèle DevOps — sans perturber leurs performances ni les ressources d’infrastructure sous-jacentes.
Conteneurs open source
Les conteneurs open source offrent des avantages supplémentaires, notamment en matière de coûts, de flexibilité et de liberté, tout en bénéficiant des connaissances et des innovations issues de la communauté. Toutefois, à mesure qu’un environnement de conteneurs évolue et devient essentiel au sein d’une entreprise, il doit garantir une disponibilité, des performances et une sécurité des applications à la fois robustes et fiables. Pour y parvenir, il est nécessaire de disposer d’une visibilité et d’un contrôle couvrant le trafic entrant, les communications réseau entre les conteneurs et les conteneurs eux-mêmes.
Les technologies de conteneurs open source peuvent interpréter les applications conteneurisées, notamment la mémoire, l’unité centrale de traitement (CPU) et le routage, mais elles ne peuvent pas interpréter le réseau de distribution, notamment ses flux de trafic, l’équilibrage de charge ou ses vulnérabilités. Par exemple, elles ne peuvent pas déterminer si le trafic correspond à une attaque par déni de service distribué (DDoS) ou simplement à un cookie. L’environnement de conteneurs ne peut pas non plus orchestrer des politiques avancées de gestion du trafic, d’optimisation ou de sécurité.
Pour pallier ce manque de visibilité et de prise en charge, un contrôleur de mise à disposition d’applications (ADC) éprouvé et bénéficiant d’un support doit être intégré à un environnement de conteneurs open source afin d’inspecter, de contrôler et d’optimiser le trafic lors du déplacement d’un conteneur sur le réseau jusqu’à sa destination.
Une plateforme de conteneurs intégrée et prise en charge
Avec Red Hat® OpenShift Container Platform, les entreprises peuvent tirer parti des conteneurs open source tout en bénéficiant de la garantie d’une solution éprouvée et prise en charge. Fondée sur les standards Docker et Kubernetes, Red Hat OpenShift Container Platform est une plateforme de conteneurs complète, adaptée aux exigences des entreprises.
F5 et Red Hat ont collaboré afin d’intégrer Red Hat OpenShift Container Platform à F5 BIG-IP, un équilibreur de charge sophistiqué et un contrôleur de mise à disposition d’applications (ADC) faisant office de proxy complet, par l’intermédiaire de F5 Container Connector. Cette solution entièrement prise en charge permet de développer et de déployer des applications avancées basées sur des conteneurs, tout en assurant une gestion efficace du trafic et de l’équilibrage de charge.
Le F5 Container Connector interprète les configurations entre les conteneurs et BIG-IP pour Red Hat OpenShift Container Platform. Grâce à une connexion continue, le F5 Container Connector détecte immédiatement l’ajout de nouveaux conteneurs à un POD et les ajoute à un pool sur BIG-IP. Il automatise également la configuration du réseau afin de l’adapter à une application ou à un environnement conteneurisé. La mise en œuvre manuelle de ces modifications par l’intermédiaire d’un système de gestion des tickets informatiques peut prendre des semaines, voire des mois, mais cette solution intégrée et automatisée permet de les effectuer en quelques secondes.
Cette solution Red Hat et F5 offre également un contrôle granulaire de l’ensemble du trafic réseau et optimise les transferts, les connexions et les flux réseau en fonction de plusieurs variables, notamment :
- Systèmes sous-jacents
- Connexions réseau
- L’application elle-même
- Exigences en matière de sécurité et de conformité
Résumé
Pour des résultats optimaux, les conteneurs doivent être intégrés à un contrôleur de mise à disposition d’applications (ADC) capable d’assurer une gestion du trafic et un équilibrage de charge de haut niveau. Red Hat et F5, deux entreprises technologiques leaders de leur secteur, se sont associées pour créer une solution de conteneurs intégrée et automatisée qui optimise la configuration du réseau afin d’accélérer et de sécuriser la mise à disposition des applications. Cette solution entièrement prise en charge comprend des feuilles de route et un support pour les entreprises afin de favoriser la réussite des déploiements de conteneurs.
Pour en savoir plus sur le partenariat entre F5 et Red Hat et sur l’intégration de leurs solutions, consultez https://f5.com/solutions/technology-alliances/red-hat ou redhat.com/openshift.
PUBLIÉ LE 26 NOVEMBRE 2017
