LVS (Linux Virtual Server) est un projet qui consiste à mettre en place un système d’équilibrage de charge fonctionnant sur des couches réseau et transport du modèle OSI afin d’apporter performance et disponibilité à la plate-forme. Cette architecture est basée sur un serveur virtuel (load balancer) redirigeant les requêtes TCP et/ou UDP vers un groupe de serveurs (pool de serveurs réels). L’objectif du projet LVS est de mettre à disposition un framework fournissant une architecture hautement évolutive et hautement disponible. Le protocole TCP/IP du noyau Linux est étendu pour supporter trois techniques de partage de charge IP (load balancing) permettant de fournir des services en parallèle tout en donnant l’impression de n'avoir qu’une seule adresse IP. L’évolutivité est obtenue en ajoutant ou supprimant dynamiquement des nœuds dans le cluster. La haute disponibilité est assurée par la détection de nœuds ou processus en anomalie et en reconfigurant dynamiquement le système.
COMMUNAUTE
LVS Mailing list : Le Forum du développeur
FONCTIONNALITES
LVS permet d'étendre les fonctionnalités du kernel Linux en ajoutant 3 techniques de load-balancing IP. Il comporte plusieurs algorithmes de connexion (Round Robin, Weight Round-Robin, Least-Connection Scheduling...) et supporte la plupart des services TCP/UDP (donc pas modification du client ou du serveur).
L’implémentation de LVS est possible suivant trois techniques de partage de charge IP
- Linux Virtual Server via Network Adress Translation
NAT (Network Adress Translation) consiste en la translation d’adresse IP entre le load balancer et les services réels, cette méthode limite le nombre de serveurs réels
- Linux Virtual Server via IP Tunneling
Dans le Tunneling IP, la liaison entre le load balancer et le serveur réel se fait via un tunnel IP, les serveurs réels répondent directement au client.
- Linux Virtual Server via Direct Routing
Le Direct Routing : le load balancer et les serveurs réels doivent se trouver sur le même segment de réseau, les serveurs réels répondent directement au client.
PERFORMANCES
Les performances sont très importantes au niveau de la scalabilité (jusqu'à 100 noeuds) et en haute disponibilité.
SITE
The Linux Virtual Server Project : Le site du développeur
TELECHARGEMENT
Télécharger les dernières versions des produits et compagnons
DOCUMENTATION
Contributeurs à cette fiche : Alain Richard (Bull) et Michel Viollet (Bull)