Malgré une vaste gamme d'utilisations, de plateformes et de technologies, la plupart des applications partagent certains besoins communs : Ils doivent être maintenus en ligne et isolés des pannes matérielles, ils doivent évoluer pour répondre à la demande et ils doivent être défendus contre toute compromission et attaque.
Depuis que les applications ont commencé à migrer des ordinateurs centraux vers des systèmes ouverts, les organisations ont utilisé des équilibreurs de charge pour gérer l'évolutivité et la disponibilité des applications. Face à des problèmes complexes et à des menaces de sécurité plus sophistiquées, les équilibreurs de charge ont développé des ensembles de fonctionnalités plus riches, avec des capacités de sécurité et d'optimisation supplémentaires.
Au fil du temps, le simple équilibreur de charge est devenu un puissant contrôleur de distribution d’applications (ADC). Partout dans le monde, des milliers d’organisations s’appuient sur les ADC pour rendre les applications qui gèrent nos vies sécurisées, rapides et disponibles. Des services médicaux d'urgence aux services bancaires en passant par les jeux et les rencontres, les ADC fournissent la technologie qui aide les applications à fonctionner de manière optimale.
À mesure que les applications passent des modèles traditionnels sur site aux services cloud, leurs besoins en termes d’évolutivité, de sécurité et de disponibilité n’ont pas diminué. Il n’est donc pas surprenant que toutes les plateformes cloud, qu’elles soient publiques ou privées, fournissent des services d’équilibrage de charge dans le cadre de leurs principales offres d’infrastructure en tant que service (IaaS).
Le service Elastic Load Balancing (ELB) d'Amazon Web Services (AWS) aide les organisations à fournir des centaines de milliers d'applications, y compris certaines des plus grandes d'Internet. Et tout comme les équilibreurs de charge sur site ont ajouté des fonctionnalités pour répondre aux besoins des clients, les services d’équilibrage de charge dans AWS continuent d’intégrer de nouvelles fonctionnalités et fonctions.
Bien qu'ELB puisse être un excellent choix pour de nombreuses organisations, d'autres nécessitent des fonctionnalités supplémentaires pour mieux prendre en charge leurs applications critiques. En outre, certaines entreprises ont déjà déployé des ADC et des équilibreurs de charge pour faire évoluer et gérer leurs applications sur site. Pour ces organisations, l’adoption de la même plateforme sur AWS que dans le centre de données peut réduire le temps, les coûts et les risques d’une migration vers le cloud. Avant de décider quel service d’équilibrage de charge convient le mieux à votre organisation, examinons les différentes options d’équilibrage de charge disponibles sur AWS.
Amazon Web Services propose l'ensemble de services le plus large de tous les principaux fournisseurs IaaS, couvrant une vaste gamme de fonctionnalités et d'utilisations, du simple calcul et du stockage en blocs aux bases de données avancées et aux environnements d'apprentissage automatique. Un élément clé de nombreuses architectures client AWS est l'équilibreur de charge, dont AWS propose deux services distincts (tous deux sous le nom « Elastic Load Balancing) à utiliser dans les environnements de cloud privé virtuel (VPC).
L'Application Load Balancer (ALB) d'Amazon fournit un équilibrage de charge, une surveillance de l'état et un routage des requêtes basé sur l'URL sur le cloud AWS. ALB propose un équilibrage de charge des protocoles HTTP et HTTPS avec des certificats SSL client chargés à partir de l'un des services de gestion de certificats AWS, et prend également en charge l'équilibrage de charge du trafic WebSocket. De plus, ALB permet la mise à l'échelle automatique des ressources du serveur back-end Elastic Compute Cloud (EC2) : lorsque les demandes de trafic augmentent, ALB peut déclencher le déploiement de serveurs supplémentaires, puis les supprimer lorsque la demande diminue.
Le service ALB s'adapte également pour faire face à une charge supplémentaire. À mesure que le trafic réseau des applications augmente, des instances ALB supplémentaires sont créées et enregistrées auprès du DNS, puis le trafic est distribué aux instances ALB à l'aide de la fonction DNS Round Robin. Pour des performances optimales sous des charges de travail soudaines, le préchauffage des instances ALB est recommandé, car le temps de démarrage des nouvelles instances peut être compris entre une et sept minutes.
ALB peut être déployé via une console Web, une CLI, une API, des modèles de formation de cloud (CFT) et de nombreux outils d'automatisation tels qu'Ansible.
Le dernier ajout à la famille d'équilibrage de charge élastique AWS est le Network Load Balancer (NLB). Comme l'équilibreur de charge « classique », celui-ci fonctionne au niveau de la couche 4 et offre un équilibrage de charge basé sur la connexion et des contrôles de santé des couches réseau et application. NLB est conçu pour faire face aux pics de trafic et aux volumes élevés de connexions. De plus, NLB permet aux cibles d'être des adresses IP privées RFC 1918 ainsi que des instances EC2. Les options de mise à l’échelle automatique, de mise à l’échelle automatique et de déploiement sont similaires à celles d’ALB.
AWS propose également toujours son Elastic Load Balancer « classique », qui prend en charge l’équilibrage de charge de base de la couche 4 pour le trafic TCP, mais pas l’équilibrage ou le pilotage du trafic de la couche 7. Les options de mise à l’échelle automatique, de mise à l’échelle automatique et de déploiement sont similaires à celles d’ALB.
La plate-forme F5® BIG-IP® ADC représente l’autre extrémité du spectre d’équilibrage de charge de l’équilibreur de charge classique AWS léger. Avec une suite de fonctionnalités répondant à une vaste gamme de défis en matière de sécurité, d’optimisation des applications et de disponibilité, BIG-IP peut résoudre des problèmes et gérer le trafic applicatif que des solutions plus simples ne peuvent tout simplement pas.
BIG-IP offre une gestion complète du trafic des applications, qui comprend l'inspection, le contrôle et la manipulation complets du trafic. Cela s'étend à la fois à la demande et à la réponse de la couche applicative, ce qui permet de prévenir la perte de données et de manipuler le contenu de la réponse du serveur. Cette capacité s’est avérée être un outil de résolution de problèmes rapide, fiable et inestimable pour des milliers d’organisations. De plus, l’inspection programmatique complète et la manipulation du trafic des applications offrent aux développeurs une couche architecturale supplémentaire pour améliorer le comportement des applications à un point de contrôle stratégique critique.
Toutes ces capacités de programmation et de résolution de problèmes impliquent un certain nombre de contraintes qui doivent être prises en compte. Tout d’abord, BIG-IP fonctionne à un niveau d’infrastructure différent de l’équilibreur de charge classique AWS et d’ALB. BIG-IP est déployé en tant qu'instance EC2 au sein de votre VPC, ce qui présente à la fois des avantages et des inconvénients. Faire partie du VPC permet à l'ADC de gérer efficacement le trafic entre tous les composants d'une zone de disponibilité et vous donne un contrôle significatif sur la communication entre les composants du VPC.
En même temps, il crée des instances EC2 supplémentaires à gérer et à entretenir. La haute disponibilité de ce qui deviendra un composant critique pour la mission, bien que facile à configurer, devient désormais votre responsabilité. La gestion de la plateforme sous-jacente en termes de mises à jour logicielles et de gestion générale n'est pas assurée par AWS mais par le client, tandis que les nouvelles fonctionnalités sont fournies par des versions publiées sur AWS Marketplace, par opposition aux mises à niveau de services essentiellement transparentes.
Enfin, BIG-IP peut être mis à l'échelle à la demande et peut mettre à l'échelle automatiquement les instances de serveur d'applications, mais presque inévitablement, une plus grande partie des efforts de configuration incombera au client par rapport à l'utilisation d'un service AWS de base.
Le choix de la solution adaptée à votre organisation dépend essentiellement de vos besoins en matière d’applications et de plateformes. Certaines applications et cas d’utilisation sont bien adaptés à AWS ELB, tandis que d’autres nécessitent les capacités avancées de BIG-IP.
ALB est conçu pour les applications nécessitant un équilibrage de charge simple avec certaines règles de base de mappage URI vers destination. ALB répondra aux services de base de distribution du trafic et de mise à l'échelle pour de nombreuses applications natives AWS. Lorsque les développeurs ou les fournisseurs d’applications sont disponibles pour résoudre les problèmes de sécurité ou de fonctionnalité en temps opportun (ou que le risque global de compromission de sécurité est plus faible), ALB est un choix évident.
Pour des applications similaires utilisant d'autres protocoles TCP et nécessitant des services d'équilibrage de charge robustes mais simples, l'équilibreur de charge classique suffira souvent.
Il existe d’autres cas d’utilisation dans lesquels une organisation peut préférer profiter de la puissance d’un ADC à part entière sur AWS. Certains des avantages de l’utilisation de BIG-IP sur AWS incluent les suivants :
L'architecture de la plateforme BIG-IP vous offre une visibilité et un contrôle complets sur le trafic des applications. Avec une vaste gamme de fonctionnalités, une instance BIG-IP dans votre environnement AWS vous offre une boîte à outils puissante pour résoudre les problèmes de performances, de sécurité ou de disponibilité des applications. BIG-IP peut diriger des requêtes individuelles de la couche applicative vers n'importe quelle ressource routable, depuis une instance EC2 locale ou une instance de serveur dans un autre cloud vers un service basé sur une API ou un périphérique sur site.
Par exemple, ALB peut diriger le trafic vers des ressources back-end en fonction de l'URL demandée, mais si vous devez diriger le trafic en fonction de caractéristiques plus complexes, telles que le type d'appareil, la vitesse de connexion ou l'emplacement du client, BIG-IP est mieux équipé pour cette tâche.
Cette capacité avancée de résolution de problèmes devient très pertinente lorsque les applications d’entreprise sont migrées vers le cloud ou lorsque les développeurs ne sont pas facilement disponibles pour atténuer les vulnérabilités des applications ou les problèmes de comportement. Lorsque votre application a besoin d'une protection urgente, se comporte mal avec un nouveau type de client (ou même un changement de système d'exploitation client) ou plante sur certaines requêtes, BIG-IP offre souvent une solution rapide, simple et fiable.
Un autre facteur important est le besoin de cohérence entre le centre de données et le cloud. Des milliers d’organisations s’appuient sur les appareils BIG-IP pour fournir des applications critiques dans leurs centres de données. L'édition virtuelle AWS BIG-IP offre les mêmes services de couche applicative sur AWS que sur un BIG-IP physique dans un centre de données. En utilisant un BIG-IP VE, les organisations peuvent migrer leurs applications plus rapidement, à moindre coût et en toute confiance, tandis que le personnel peut concentrer ses efforts de recyclage ailleurs, et les connaissances organisationnelles et l'investissement dans BIG-IP sont maintenus.
En tant que service natif, le déploiement d'AWS ELB est aussi simple que de cocher une case. La mise en place et l'exécution d'un BIG-IP VE sur AWS implique le déploiement de l'instance à partir d'Amazon Marketplace à l'aide d'un modèle de facturation des services publics ou d'un modèle de licence personnelle. Le déploiement de l'image BIG-IP peut être géré manuellement ou à l'aide d'options d'automatisation telles que AWS CFT, dont F5 propose un certain nombre de modèles entièrement pris en charge (ainsi que certains « expérimentaux »). Ceux-ci sont disponibles sur le référentiel Github F5 , qui contient également un SDK Python et d'autres outils. Des outils de déploiement, des manuels et une documentation supplémentaires pris en charge par la communauté sont disponibles dans le référentiel F5 DevCentral .
AWS ELB et F5 BIG-IP offrent tous deux une valeur convaincante aux organisations déployant des applications sur AWS. Savoir quand et où vous pourriez avoir besoin de plus de contrôle, de sécurité ou de programmabilité peut vous aider à choisir la bonne solution pour prendre en charge vos applications (et votre entreprise) dans le cloud.
Les dernières nouveautés en matière de renseignement sur les menaces applicatives.
La communauté F5 pour les forums de discussion et les articles d'experts.