Linux Virtual Server (LVS) ist eine Software zur Lastverteilung. Sie erweitert den Linux-Kernel um Methoden zur transparenten Zuweisung von Anfragen aus dem Netzwerk mehrerer Server. Dies erlaubt die Realisierung von hochverfügbaren Serverfarmen mit freier Software. Serverfarmen bestehen aus mehreren Rechnern, die Anfragen über ein Rechnernetz erhalten und bearbeiten, und einem oder mehrerer Lastverteiler, die die Anfragen auf die zur Verfügung stehenden Rechner aufteilen. Da Rechner dynamisch zu diesem Verbund hinzugefügt und entfernt werden können, lassen sich so Skalierbarkeit und Verfügbarkeit erhöhen. Linux Virtual Server übernimmt in einer solchen Installation die Rolle des Lastverteilers. Linux Virtual Server stellt vier Strategien zur Verfügung, um Anfragen aufzuteilen:
- Round-Robin-Verteilung
- Gewichtete Round-Robin-verteilung
- Verteilung nach bestehenden Verbindungen
- Gewichtete Verteilung nach bestehenden Verbindungen
Für die Rückantwort der Server an den anfragenden Rechner gib es ebenfalls verschiedene Möglichkeiten. Linux Virtual Server implementiert die folgenden Techniken:
- LVS/NAT (entspricht NAT based SLB)
- LVS/TUN
- LVS/DR (entspricht Flat based SLB)
Für eine hochverfügbare Installation werden noch weitere Komponenten benötigt, für die es ebenfalls Freie-Software-Projekte gibt.
- Zweiter Rechner mit LVS, der bei Versagen des ersten Rechners einspringt. Infrage kommt beispielsweise die Software Heartbeat des High Availability Linux-Projekts
- Netzwerk-Monitoring-Software, die das Versagen eines Servers erkennt und ihn automatisch aus dem Verbund entfernen (und ggf. wieder einbinden) kann.