Introduction. Linux Virtual Server for Scalable Network Services. Linux Virtual Server. 3-tier architecture of LVS. Virtual Server via NAT



Similar documents
Linux Virtual Server for Scalable Network Services

Multicast-based Distributed LVS (MD-LVS) for improving. scalability and availability

Purpose-Built Load Balancing The Advantages of Coyote Point Equalizer over Software-based Solutions

PEGASUS: Competitive load balancing using inetd

How To Run A Web Farm On Linux (Ahem) On A Single Computer (For Free) On Your Computer (With A Freebie) On An Ipv4 (For Cheap) Or Ipv2 (For A Free) (For

Implementation, Simulation of Linux Virtual Server in ns-2

How To Build A Virtual Server Cluster In Linux 2003

Linux Virtual Server Clusters

Building a Highly Available and Scalable Web Farm

Creating Web Farms with Linux (Linux High Availability and Scalability)

Load Balancing Voice Applications with Piranha 1

UNIVERSITY OF OSLO Department of Informatics. Performance Measurement of Web Services Linux Virtual Server. Muhammad Ashfaq Oslo University College

How To Balance A Load Balancer On A Server On A Linux (Or Ipa) (Or Ahem) (For Ahem/Netnet) (On A Linux) (Permanent) (Netnet/Netlan) (Un

Load Balancing and Sessions. C. Kopparapu, Load Balancing Servers, Firewalls and Caches. Wiley, 2002.

Building a Systems Infrastructure to Support e- Business

Scalable Linux Clusters with LVS

Load Balancing a Cluster of Web Servers

ZEN LOAD BALANCER EE v3.04 DATASHEET The Load Balancing made easy

Performance Assessment of High Availability Clustered Computing using LVS-NAT

How To Understand The Role Of The Lib8000 On A Network (Networking) On A Server Cluster (Netware) On An Ipnet (Netrope) On Ubuntu) On Pcode (Netnet)

High Availability Low Dollar Load Balancing

A Content Aware Scheduling System for Network Services in Linux Clusters 1

Radware s AppDirector and AppXcel An Application Delivery solution for applications developed over BEA s Weblogic

Load Balancing for Microsoft Office Communication Server 2007 Release 2

Linux Cluster. Administration

AppDirector Load balancing IBM Websphere and AppXcel

Oracle Collaboration Suite

Availability Digest. Redundant Load Balancing for High Availability July 2013

Avaya P333R-LB. Load Balancing Stackable Switch. Load Balancing Application Guide

The Three-level Approaches for Differentiated Service in Clustering Web Server

Load Balancing Bloxx Web Filter. Deployment Guide

Linux Virtual Server Administration. RHEL5: Linux Virtual Server (LVS)

Load Balancing a Cluster of Web Servers

High Performance Cluster Support for NLB on Window

Deploying F5 with Microsoft Forefront Threat Management Gateway 2010

Formación en Tecnologías Avanzadas

Load Balancing und Load Sharing

WebGUI Load Balancing

Content-Aware Load Balancing using Direct Routing for VOD Streaming Service

A Low Cost Two-tier Architecture Model Implementation for High Availability Clusters For Application Load Balancing

Load Balancing Smoothwall Secure Web Gateway

Managing Virtual Servers

Web Switching (Draft)

Load Balancing Trend Micro InterScan Web Gateway

Outline VLAN. Inter-VLAN communication. Layer-3 Switches. Spanning Tree Protocol Recap

Deploying F5 with Microsoft Active Directory Federation Services

DEPLOYMENT GUIDE Version 1.0. Deploying the BIG-IP LTM with Microsoft Windows Server 2008 R2 Remote Desktop Services

Network Layers. CSC358 - Introduction to Computer Networks

IERG 4080 Building Scalable Internet-based Services

ZEN LOAD BALANCER EE v3.02 DATASHEET The Load Balancing made easy

ALOHA Load-Balancer. API objects. Document version: v2.0. API version concerned: v2.0. Aloha version concerned: Last update date: 24 th November, 2011

A Low Cost Two-Tier Architecture Model For High Availability Clusters Application Load Balancing

Chapter 7. Firewalls

Load Balancing Sophos Web Gateway. Deployment Guide

Overview: Load Balancing with the MNLB Feature Set for LocalDirector

Linux Virtual Server Administration. Linux Virtual Server (LVS) for Red Hat Enterprise Linux 5.2

Load Balancing McAfee Web Gateway. Deployment Guide

Red Hat Enterprise Linux 7 Load Balancer Administration

HyLARD: A Hybrid Locality-Aware Request Distribution Policy in Cluster-based Web Servers

DEPLOYMENT GUIDE Version 1.1. Deploying F5 with IBM WebSphere 7

Smoothwall Web Filter Deployment Guide

Deploying F5 with Microsoft Remote Desktop Session Host Servers

Server Traffic Management. Jeff Chase Duke University, Department of Computer Science CPS 212: Distributed Information Systems

DMZ Network Visibility with Wireshark June 15, 2010

Single Pass Load Balancing with Session Persistence in IPv6 Network. C. J. (Charlie) Liu Network Operations Charter Communications

Linux Virtual Server (LVS) for Red Hat Enterprise Linux 5.0

vrealize Automation Load Balancing

Highly Available and Efficient Load Cluster Management System using SNMP and Web

Using Dynamic Feedback to Optimise Load Balancing Decisions

How To Manage Performance On A Network (Networking) On A Server (Netware) On Your Computer Or Network (Computers) On An Offline) On The Netbook (Network) On Pc Or Mac (Netcom) On

Load Balancing Microsoft Sharepoint 2010 Load Balancing Microsoft Sharepoint Deployment Guide

How To Use The Cisco Ace Module For A Load Balancing System

Layer 4-7 Server Load Balancing. Security, High-Availability and Scalability of Web and Application Servers

Stateful Firewalls. Hank and Foo

VERITAS Cluster Server Traffic Director Option. Product Overview

Load Balancing Web Proxies Load Balancing Web Filters Load Balancing Web Gateways. Deployment Guide

Exam : EE : F5 BIG-IP V9 Local traffic Management. Title. Ver :

DEPLOYMENT GUIDE Version 1.0. Deploying the BIG-IP LTM with Apache Tomcat and Apache HTTP Server

CS 188/219. Scalable Internet Services Andrew Mutz October 8, 2015

Content Delivery Networks

A Low Cost Two-Tier Architecture Model for High Availability Clusters Application Load Balancing

HIGH PERFORMANCE WEB SERVERS USING LOAD BALANCING TECHNIQUE SITI AISHAH BINTI AB RAHMAN

OpenFlow Based Load Balancing

CNS-208 Citrix NetScaler 10 Essentials for ACE Migration

Content Switching Module for the Catalyst 6500 and Cisco 7600 Internet Router

What's New in Cisco ACE Application Control Engine Module for the Cisco Catalyst 6500 and Cisco 7600 Series Software Release 2.1.0

Content Networking Fundamentals

Application. Transport. Network. Data Link. Physical. Network Layers. Goal

CS514: Intermediate Course in Computer Systems

Advanced Networking Technologies

Netfilter Failover. Connection Tracking State Replication. Krisztián Kovács

Active-Active Servers and Connection Synchronisation for LVS

Deploying the BIG-IP System v10 with VMware Virtual Desktop Infrastructure (VDI)

Web Caching and CDNs. Aditya Akella

Transcription:

Linux Virtual Server for Scalable Network Services Wensong Zhang wensong@gnuchina.org Ottawa Linux Symposium 2000 July 22th, 2000 1 Introduction Explosive growth of the Internet The requirements for servers Increamental scalability 24x7 availability Manageability Cost-effectiveness The single server solution The cluster of servers solution Linux Virtual Server 3-tier architecture of LVS Linux Virtual Server is a software tool that supports load balancing among multiple Internet servers that share their workload. It can be used to build scalable network services. 3 IP Load Balancing Techniques Virtual Server via NAT (Network Address Translation) Virtual Server via IP Tunneling Virtual Server via Direct Routing Virtual Server via NAT 5

An example of virtual server via NAT Packet rewriting flow: 7 VS via IP Tunneling VS-Tunneling Workflow 9 VS via Direct Routing VS-DRouting Workflow 11

Advantages and Disadvantages Virtual Server via NAT Virtual Server via IP Tunneling Virtual Server via Direct Routing 13 Virtual Server via NAT Advantages: real servers can run any OS that supports TCP/IP only an IP address is needed for the load balancer, real servers can use private IP addresses. Disadvantages: the maximum number of server nodes is limited, because both request and reponse packets are rewritten by the load balancer. When the number of server nodes increase up to 20, the load balancer will probably become a new bottleneck. Virtual Server via IP Tunneling Advantages: real servers send response packets to clients directly, which can follow different network routes real servers can be in different networks, LAN/WAN. greatly increasing the scalability of Virtual Server. Disadvantages: real servers must support IP tunneling protocol. 15 Virtual Server via Direct Routing Advantages: real servers send response packets to clients directly, which can follow different network routes no tunneling overhead Disadvantages: servers must have non-arp alias interface; or servers can be configured to redirect some packets to local port. the load balancer and servers must have one of their interfaces in the same LAN segment. The Comparison Table of VS-NAT, VS-Tunneling and VS-DRouting Implemention Issues VS-NAT VS-Tunneling VS-DRouting Server OS any tunneling non-arp device Server network private LAN/WAN LAN Server number low (10~20) high (>100) high (>100) Server gatewayload balancer own router own router 17

Implemention Issues (cont') Each connection entry uses 128 bytes effective memory. Connection hash table using clients' <protocol, address, port> as hash key. Slow timer to collect stale connection. ICMP handling Three packet forwarding methods can be used together in a single load balancer. 19 Connection Scheduling Fine scheduling granularity: Network connection The scheduling algorithms: Round-Robin Scheduling Weighted Round-Robin Scheduling Least-Connection Scheduling Weighted Least-Connection Scheduling Connection Affinity Sometimes the connections from the same client must be assigned to the same server either for functional or for performace reasons, such as FTP, SSL, http cookies. Use the persistent template to handle connection affinity. <cip, 0, vip, 0, sip, 0> for FTP <cip, 0, vip, vport, sip, sport> for persistent services except FTP. 21 The LocalNode Feature In a virtual server of only a few nodes(2,3 or more), it is a resource waste if the load balancer is only used to direct packets. The LocalNode feature enable that the load balancer not only can redirect packets, but also can processe some packets locally. FWMARK-based services Use a firewall-mark to denote a virtual service instead of <protocol, address, port> It can be flexibly used to build a virtual services associated to different IP addresses and port numbers. 23 LVS Cluster Management Software RedHat Cluster Server / Piranha LVS+Piranha Cluster Management tools. UltraMoney: Open-Source Server Farm LVS+lvs-gui+heartbeat+ldirectord heartbeat+ldirectord heartbeat+mon...

Some sites using LVS UK National JANET Cache (wwwcache.ja.net) www.linux.com sourceforge.net One of largest PC manufacturers www.netwalk.com... 25 Related Works The client-side approach The server-side Round-Robin DNS approach The server-side application-level scheduling approach EDDIE pweb Reverse-proxy (Apache) SWEB Related Works (cont') The server-side IP-level scheduling approach. Berkeley's MagicRouter, Cisco's LocalDirector, Alteon's ACEDirector, F5 Big/IP IBM's TCP router ONE-IP IBM's NetDispatcher 27 Conclusion LVS has patched Linux kernel 2.0 and kernel 2.2 to support three IP load balancing techniques: VS-NAT, VS-Tunneling, VS-DRouting Four scheduling algorithms RR,WRR,LC,WLC High scalability (up to 100 nodes) High availability Supporting most of TCP and UDP services, no modification to either clients or servers. Compared to Other Commercial Products Three IP load balancing technologies Multiple scheduling algorithms A robust and stable code base, a large user and developer base. Reliability proven in big real world applications Free to everyone 29 Future Work Making the LVS netfilter module for kernel 2.4 stable in the following month Implementing application-based (layer-7) load balancing inside the kernel. More load-balancing algorithms or load-sharing algorithms Exploring higher degrees of high availability (or even fault-tolerance)

Acknowledgements Linux Virtual Server Project Thanks to Julian Anastasov, Joseph Mack, Peter Kese, Horms, Lars Marowsky-Bree, Roberto Nibali and others. Thanks to Red Hat, OLS. 31 http://www.linuxvirtualserver.org/