Qu'est-ce qu'un équilibreur de charge
Les équilibreurs de charge sont assis devant votre application et répartissent le trafic entrant sur plusieurs instances de votre application. Par exemple, supposons que vous ayez un site Web de commerce électronique. Vous remarquez que vous avez gagné en traction et attirez de plus en plus de clients vers votre application. Afin de gérer ce trafic, vous pouvez déployer une autre instance de votre boutique de commerce électronique. Maintenant, pour que les utilisateurs soient dirigés entre ces instances de votre magasin, vous déployez un équilibreur de charge devant eux.
L'équilibreur de charge répartira le trafic entre les deux instances de votre application. Cela vous permet de faire évoluer votre application en déployant plus d'instances et en les plaçant derrière un équilibreur de charge, vous augmentez la quantité de trafic que vous pouvez gérer. Cela permet également d'améliorer votre temps de disponibilité - avec un équilibreur de charge, si vous avez plusieurs instances, et que l'une d'entre elles échoue ou se déconnecte, l'équilibreur de charge détournerait alors le trafic vers les nœuds en cours d'exécution.
Déploiement d'un équilibreur de charge
Aperçu
Il s'agit d'un service entièrement géré. Vous n'avez pas à vous soucier de maintenir ou d'exécuter votre infrastructure d'équilibreur de charge. Cela vous permet de vous concentrer sur la création de vos applications et de les développer à votre guise. Veuillez noter, cependant, que vous devrez vous assurer que votre application est configurée et installée correctement pour fonctionner avec l'équilibreur de charge.
Règles de transfert
Ici, vous définissez quels ports publics sont mappés à quels ports internes avec protocole. Par exemple: si j'ai une application ruby on rails que je souhaite mettre un équilibreur de charge devant, et l'application écoute sur le port 1234
mais je veux que les utilisateurs accèdent à mon application via le port 80
, alors je définirais mon mappage commeLoad Balancer http 80 -> Instance HTTP 1234
Si vous avez choisi HTTPS comme protocole, vous serez invité à télécharger votre propre certificat SSL. Dans une future version, le support Let's Encrypt sera ajouté.
Configuration de l'équilibreur de charge
Des algorithmes
Il existe deux options disponibles pour l'algorithme:
-
Roundrobin - Sélectionne les serveurs à tour de rôle. Il s'agit de l'algorithme par défaut.
-
Leastconn - Sélectionne le serveur avec le moins de connexions - il est recommandé pour les sessions plus longues. Les serveurs du même back-end sont également tournés de manière à tour de rôle.
Sessions collantes
Nous utilisons la persistance de session contrôlée par l'application pour nos sessions persistantes.
Votre application génère un cookie qui détermine la durée du collage de la session. L'équilibreur de charge émet toujours son propre cookie de session par-dessus, mais il suit désormais la durée de vie du cookie d'application.
Cela rend les sessions persistantes plus efficaces, garantissant que les utilisateurs ne sont jamais routés vers un serveur après l'expiration de leur cookie de session locale. Cependant, il est plus complexe à implémenter car il nécessite une intégration supplémentaire entre l'équilibreur de charge et l'application.
Il vous sera demandé d'ajouter un nom de cookie.
Étiquette
Ceci est juste une étiquette pour votre équilibreur de charge.
Forcer HTTP à HTTPS
Cela forcera la redirection HTTP vers HTTPS. Vous aurez besoin d'un certificat SSL valide et HTTPS configuré pour que cela fonctionne correctement.
Bilans de santé
Ces vérifications de l'état vérifieront que vos applications / instances attachées sont saines et qu'elles peuvent être correctement acheminées vers. Si l'une de vos instances échoue à un contrôle d'intégrité, l'équilibreur de charge réduira le trafic vers cette instance.
Après le déploiement
Une fois le déploiement terminé (cela peut prendre quelques minutes), vous recevrez une adresse IPV4 et IPV6 qui est votre adresse IP publique pour l'équilibreur de charge.
Maintenant, vous pourrez également attacher / détacher vos applications / instances à l'équilibreur de charge, ainsi que toutes les modifications de configuration que vous souhaitez.
Métrique
Une fois que votre équilibreur de charge a fonctionné pendant quelques minutes, des mesures seront collectées. Vous pourrez afficher vos métriques à partir de l'onglet métriques de votre tableau de bord d'équilibreur de charge.