Comprendre les Différents Types de Stockage
Nous profitons de la sortie de Block Storage en bêta publique pour saisir l'occasion de vous expliquer les principales différences entre Block, File et Object Storage.
À mesure que votre entreprise grandit, le débit réseau de votre infrastructure s’intensifie, les temps de réponse et de traitement de vos serveurs augmentent et vous commencez à avoir des difficultés à assurer un service correct à vos utilisateurs/clients. Le moment est venu de réfléchir à l’usage d’un load balancer, un produit important pour les entreprises qui désirent se mettre à l’échelle et assurer la meilleure expérience utilisateur possible.
Dans cet article, découvrez concrètement le fonctionnement d’un load balancer, ses usages et les avantages pour votre infrastructure cloud.
Un load balancer est un produit réseau qui a pour but de répartir la charge réseau entre un ou plusieurs serveurs, c'est-à-dire qu’il prend en charge l’ensemble des requêtes réseau à un serveur et fait office d’aiguillage des paquets réseaux vers un serveur suivant une ou plusieurs règles prédéfinies.
Ainsi, plusieurs serveurs peuvent être hébergés derrière une même adresse IP, permettant de mettre en commun les ressources. En effet, le load balancer peut être hébergé soit dans le cloud, soit on-premise dans un serveur privé ; il redirige vers des composants portants des IPs, qui peuvent être des instances cloud, des serveurs dédiés ou Bare Metal.
Le load balancer agit comme un point d’entrée de l’infrastructure : les utilisateurs font appel à l’URL de l'application ou du site web, qui est dirigé vers l’adresse IP du load balancer puis la requête atteint le serveur de destination de manière transparente.
Grâce à des règles pré-établies, le load balancer déterminera comment il traite la requête. Il y a plusieurs types de règles possibles :
Les autres fonctionnalités d’un load balancer cloud
Un outil aussi précieux que le load balancer peut porter bien d’autres fonctionnalités, liées notamment à l’amélioration de la sécurité, de la résilience ou encore de la performance réseau.
Grâce au load balancer, vous pouvez vérifier si les backends sont fonctionnels et assurent le service demandé. Le load balancer envoie une requête au serveur en backend et en retour le serveur répond. S’il n’y a pas de réponse, alors le load balancer définit le serveur comme défectueux. Le développeur choisit l’action à prendre en conséquence.
Exemple de requête API :
---GET /lb/v1/regions/{region}/lbs/{lb_id}/backend-statsGET /lb/v1/regions/{region}/lbs/{lb_id}/backend-statset sa réponse type :{"backend_servers_stats": [{"instance_id": "string","backend_id": "string","ip": "string","server_state": "stopped",starting or running or stopping."server_state_changed_at": "string","last_health_check_status": "unknown"or;neutral or failed or passed or condpass. }],"total count": 42
Comme nous l’avons vu, le load balancer permet de mettre en miroir plusieurs serveurs proposant le même service : si un serveur ne répond pas, un autre prend le relais. Cette résilience permet de volontairement débrancher un serveur sans couper le service pour les utilisateurs afin de pouvoir faire des mises à jour logicielles, de sécurité, changer la taille d’une instance ou bien actualiser un élément de l’infrastructure sans affecter l’uptime général du service. Grâce au load balancer, vous pouvez décider du meilleur moment pour effectuer vos mises à jour.
Votre application ou site web accueille désormais de nombreuses visites. Maintenant que vous êtes en production et que vous êtes pleinement lancé dans votre business, vous recevez des connexions de vos clients qui sont légitimes mais aussi d’autres moins désirées, comme par exemple des robots de scraping, des concurrents étrangers ou encore des tentatives d’intrusion.
Vous pouvez mettre des règles, dites ACL (Access Control List), qui permettent de bannir certaines IPs ou bien d’autoriser uniquement certaines connexions, afin d’augmenter votre niveau de sécurité.
{ "name": "string", "action": { "type": "deny" }, "match": { "ip_subnet": [192.168.1.1 ], "http_filter": "acl_http_filter_none", "http_filter_value": [ "string" ], "http_filter_option": "string", "invert": "boolean" }, "index": 42
En tant que point d’entrée principal de l'infrastructure, le load balancer peut porter le chiffrement TLS/SSL pour avoir une connexion sécurisée entre le navigateur de l’utilisateur, le site web et le serveur de backend.
Cela permet d’assurer la confidentialité et la sécurité des requêtes entre l’utilisateur et le load balancer.
Il y a différentes façons de gérer un certificat TLS/SSL avec un load balancer :
Chez certains fournisseurs le load balancer est doublé d’une seconde instance qui peut prendre le relais à tout moment. Pour d’autres le load balancer est régionalisé, c’est-à-dire qu’il est toujours porté par une des trois AZ de la région.
Pour s’assurer d’une bonne disponibilité, vous pouvez aussi prévoir le cas où toutes les redondances ont failli en redirigeant par exemple le trafic vers un site statique hébergé sur le service Object Storage pour éviter que les utilisateurs se retrouvent en face à une 404.
Augmenter la résilience et la redondance par les backends et les Health Checks, améliorer les performances réseau grâce à la gestion des certificats ou encore faire passer la sécurité au niveau supérieur par la configuration de règles d'accès sont les principaux bénéfices apportés par les différentes fonctionnalités que l’on vient d’évoquer. En complément des règles de redirection, fonction principale du load balancer, elles assurent au produit une place importante dans l’infrastructure cloud.
Toute entreprise qui entreprend aujourd’hui de construire de façon pérenne et scalable son business dans le Cloud doit implémenter un load balancer afin d’assurer la pérennité de son infrastructure et exploiter le Cloud à son plein potentiel.
Chez Scaleway, en tant que fournisseur de services multicloud, nous proposons bien sûr un load balancer. Hébergé sur une infrastructure hautement disponible, il possède une capacité de bande passante allant jusqu'à 4 Gbits/s et des backends illimités pour vous aider à faire évoluer votre infrastructure en toute sérénité.
Nous favorisons l’ouverture de connexions vers des backends en dehors de notre infrastructure afin de permettre à nos clients de construire une architecture multicloud.
Connectez-vous directement à la console Scaleway pour démarrer votre premier Load Balancer dès aujourd'hui.
Nous profitons de la sortie de Block Storage en bêta publique pour saisir l'occasion de vous expliquer les principales différences entre Block, File et Object Storage.
Scaleway a mis en place un programme pour intégrer des profils juniors ou autodidactes: le Cloud Builder Launchpad. Découvrez en plus dans cet article.
Les éditeurs SaaS croulent sous les métriques de leurs utilisateurs. C’est au croisement de cette capacité de récolter de gros volumes et cet impératif de performance que s'intercale l'IA.