Home / F5 / Le partage de charge ou load balancing pour les nuls

Le partage de charge ou load balancing pour les nuls

C’est quoi le partage de charge (ou load balancing)

Je vais expliquer une notion technique, je sais que c’est relou mais il faut souffrir pour gagner plus donc voila, essaye de suivre, ça te sera peut être utile dans un entretien :

-Est ce que vous avez déjà travaillés sur du load balancing ?

-Ehhhhh

-Next

Par contre, si tu répond cela :

-Est ce que vous avez déjà travaillés sur du load balancing ?

-Oui bien sur, j’ai mis en place des boitiers de partage de charge de type F5, j’ai configuré le load balancing grace à une persistance sur cookie dans le cadre du déploiement de nouvel appli web.

-Ok

C’est quoi le load balancing ?

Déjà, c’est un terme anglais, load pour….charge et balancing pour partage (et non pas balancer, faux amis tout ca).

Concrètement ça veut dire quoi ? Je vais te l’expliquer à travers un exemple

Scénario réseaux de load babancing avec 2 serveurs et DNS

Quand tu consulte machinalement ton facebook, qu’est ce qu’il se passe ? C’est pas très compliqué, ton navigateur envoie des requêtes à un serveur Web de Facebook.

Je vais dire un truc que l’on dit tout le temps en informatique quitte à en être névrosés :

Monsieur, monsieur qu’est ce qu’il se passe si un des serveur tombe? (Oui c’est une phrase que t’entendra dans toutes les entreprises qui ont un réseaux informatique)

En effet, quand t’as juste un serveur, le cas de panne c’est simple, t’as plus de service donc ici t’as plus de facebook.

Qu’est ce que l’on fait alors ?

On va mettre 2 serveurs, essaie de me suivre dans ce petit scénario de bac à sable que je suis en train d’écrire pendant que je bois une tasse de chicorée au cacao

Quand tu accède au site facebook, tu fais quoi, c’est pas (encore) par télépathie, donc tu tape sur ton navigateur www.facebook.com

La, ton OS va faire une requête DNS et récupérer une adresse ip qui pointe vers un de tes 2 serveur web.On va les appeler serveur A et serveur B

Il faut bien que tu comprenne comment marche le DNS.

Quand tu fais une requête DNS, tu vas obtenir soit l’adresse du serveur A ou le serveur B.

Concrètement dans notre scénario, les requêtes que tu vas faire pour accéder à facebook vont soit aller vers le serveur A OU le serveur B

Mais il y a un paramètre à prendre en compte, c’est le TTL DNS, quand tu fais une requête DNS.

Quand tu vas obtenir une réponses, l’adresse ip du serveur A OU du serveur B, la valeur va être « stocké » sur ton systemen (Windows Linux etc) pendant un certain temps que l’on appelle le TTL

Regarde je l’ai fait sur mon poste Windows : tu tape ipconfig /displaydns, et il va t’afficher le cache DNS sur ton poste

www.facebook.com
—————————————-
Nom d’enregistrement. : www.facebook.com
Type d’enregistrement : 5
Durée de vie . . . . : 1443
Longueur de données . : 8
Section . . . . . . . : Réponse
Enregistrement CNAME : star-mini.c10r.facebook.com
Nom d’enregistrement. : star-mini.c10r.facebook.com
Type d’enregistrement : 1
Durée de vie . . . . : 1443
Longueur de données . : 4
Section . . . . . . . : Réponse
Enregistrement (hôte) : 179.60.192.36

 

Ici, c’est 1443 secondes, soit environ 25 minutes.

Donc concrètement, t’est en train de surfer sur facebook (on est toujours dans mon scénario), le serveur sur lequel tu est connecté tombe, il a un problème hardware et ne démarre plus.

Qu’est ce qu’il va se passer ?

Concrètement, ton navigateur va faire des requêtes vers le serveur qui est tombé, mais il n’aura aucune réponses.

Tu sera coupé de facebook pendant au moins 25 mins (si ton TTL est à 1443 secondes)

Ensuite, ton système va faire une nouvelle requêtes et tu sera (peut être) redirigé vers le nouveau serveur B qui lui est opérationnelle

Donc ta haute disponibilité tu ne l’auras pas.

La solution c’est le partage de charge.

L’avantage du load balancing

La, ce que l’on va faire dans notre scénario, c’est que l’ on va introduire un load balancer devant les 2 serveurs.

On va aussi faire pointer www.facebook.com sur notre load balancer.

Ensuite, sur ce partageur de charge, on va faire une configuration de telle sorte que tous les flux a destination de facebook soit redirigé vers un de nos 2 serveurs.

Et, c’est la que c’est beau, c’est si un de tes serveurs tombe, le système de load balancing va s’en rendre compte et va rediriger les flux client vers l’autre serveur presque instantanément.

Mais si il tombe, on perd le service non ?

Oui mais ce qui se fait tout le temps en entreprise, c’est que l’on met 2 load balancer en mode actif/passif.

Celui qui est passif à un instant t, va reprendre le trafic de l’actif si ce dernier tombe.

Diminuer la charge réseaux des serveurs

Dans l’exemple que je t’ai donné, tu as 2 serveurs.

Mais rien ne t’empêche de mettre 6 serveur en parallèle.

Quel est l’avantage ?

Ca te permet d’éviter de surcharger les serveurs surtout quand tu as un site internet qui marche bien par exemple

Est ce que le load balancing est utilisé en entreprise ?

Je t’assure que c’est pas un concept de type « les anneaux en algèbre » (programme MPSI ), ni genre le développement en Pascal ou en ADA, chose que tu ne vois qu’a l’école.

Non, la c’est plutôt utilisé massivement dans toutes Système d’informations

Si tu reprendre l’exemple que je t’ai introduis, tu ne peux tout simplement pas te passer de load balancer car tu ne pourras pas rendre un service H24.

T’imagine si amazon tombe pendant 30 minutes le chiffre d’affaire perdu ?

C’est en millions d’euros, donc pas étonnant que toutes les entreprises l’utilise

Load balancer sont aussi firewall applicatif, gère les authentification et le GSLB

Anciennement les load balancer faisait juste du partage de charge « bete et méchant »

Maintenant, cela a pas mal évolué.

Tu peux par exemple héberger les certificats directement sur le boitier (ou appliance ca se dit aussi), l’avantage est que tu ne les déposes que sur un seul élément (ici l’équipement réseaux) et certains boitier possèdent des accélerateur hardware SSL pour encaisser un gros flux de session SSL genre 100 000 utilisateur en parraléle connecté en parralele sur l’appli.

Du lourd quoi

Tu as aussi des modules sécurité, pour protéger les services internet.

C’est quoi ?

C’est une application qui va « regarder » à l’intérieur des flux et détecter tous les type d’attaque au niveau HTTP Web.

L’intéret ?

C’est d’éviter d’avoir la fuite de données, ce qui est fondamental dans le monde d’aujourd’hui

Tutoriel sur le load balancing

About khaled azrak

Ingénieur réseaux depuis 10 ans - Architecte - Passionné de nouvelles technologie et d'internet.

Lire aussi

Tout sur la certification F5 (Networks) – Guide complet

Je suis en train de préparer la certification F5 Networks. Je pense que si tu ...

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *