Repartition de charge cours 1

Le mar. 26 avril 2011 par Kasey

Premier cour de répartition de charge linux. Au programme : présentation, rentabilité, sécurité

Présentation

Il existe plusieurs types de répartition de charge :

  • Backup : la mise en place de backup de sécurité inclut parfois un système de répartition de charge inhérent au plan de reprise d'activité
  • Round-robin : le système répartis les requêtes aux ressources de manière séquentielle

Le but de la répartition de charge est lisser le trafic réseau à destination de notre cible de service ou en retour du service. Par exemple, en fonction de notre adresse IP, un serveur sur un continent différent peut répondre à l'utilisateur.

Algorithme par débordement : lorsque l'on agrège plusieurs cartes réseau en une seule, le système fait monter la première carte en charge, puis lorsque celle-ci est chargée, on passe par la seconde, etc. C'est le cas avec NLB par exemple. Sous Linux avec le Bonding.

  • mode broadcast : c'est une sorte de NAT, on usurpe l'adresse IP et MAC et on reroute la charge vers les serveurs sous-jacents en broadcast, ainsi même si une seule machine répond, en cas de panne c'est la seconde machine qui répond.
  • 802.3ad : implémenté au niveau matériel, il permet de fabriquer des agrégats de ports entre plusieurs switchs (stack, etherchannel, etc)
  • TLB : balance adaptative : récupération du trafic sur une interface et sortie du trafic sur toutes les autres interfaces.
  • ALB : répartition de charge adaptative au niveau de l'entrée et de la sortie. Les requêtes sont reçues sur N interfaces et la sortie se fait sur N interfaces. Note dans le cas où un paquet sort par une interface réseau et entre par une autre sans avoir été déclaré dans le bond, le paquet est considéré comme martien.

Ces modes apportent plusieurs choses : stabilité et sécurité. Si un lien tombe, la bande passante est juste divisée.