Product SiteDocumentation Site

Red Hat Enterprise Linux 5

Virtual Server Administration

Linux Virtual Server (LVS) for Red Hat Enterprise Linux

Edition 5

Logo


Legal Notice

Copyright © 2009 Red Hat, Inc.
The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, JBoss, MetaMatrix, Fedora, the Infinity Logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
All other trademarks are the property of their respective owners.


1801 Varsity Drive
 RaleighNC 27606-2072 USA
 Phone: +1 919 754 3700
 Phone: 888 733 4281
 Fax: +1 919 754 3701

Abstract
Building a Linux Virtual Server (LVS) system offers highly-available and scalable solution for production services using specialized routing and load-balancing techniques configured through the PIRANHA. This book discusses the configuration of high-performance systems and services with Red Hat Enterprise Linux and LVS for Red Hat Enterprise Linux 5.

Introduction
1. Document Conventions
1.1. Typographic Conventions
1.2. Pull-quote Conventions
1.3. Notes and Warnings
2. Feedback
1. Linux Virtual Server Overview
1.1. A Basic LVS Configuration
1.1.1. Data Replication and Data Sharing Between Real Servers
1.2. A Three-Tier LVS Configuration
1.3. LVS Scheduling Overview
1.3.1. Scheduling Algorithms
1.3.2. Server Weight and Scheduling
1.4. Routing Methods
1.4.1. NAT Routing
1.4.2. Direct Routing
1.5. Persistence and Firewall Marks
1.5.1. Persistence
1.5.2. Firewall Marks
1.6. LVS — A Block Diagram
1.6.1. LVS Components
2. Initial LVS Configuration
2.1. Configuring Services on the LVS Routers
2.2. Setting a Password for the Piranha Configuration Tool
2.3. Starting the Piranha Configuration Tool Service
2.3.1. Configuring the Piranha Configuration Tool Web Server Port
2.4. Limiting Access To the Piranha Configuration Tool
2.5. Turning on Packet Forwarding
2.6. Configuring Services on the Real Servers
3. Setting Up LVS
3.1. The NAT LVS Network
3.1.1. Configuring Network Interfaces for LVS with NAT
3.1.2. Routing on the Real Servers
3.1.3. Enabling NAT Routing on the LVS Routers
3.2. LVS via Direct Routing
3.2.1. Direct Routing and arptables_jf
3.2.2. Direct Routing and iptables
3.3. Putting the Configuration Together
3.3.1. General LVS Networking Tips
3.4. Multi-port Services and LVS
3.4.1. Assigning Firewall Marks
3.5. Configuring FTP
3.5.1. How FTP Works
3.5.2. How This Affects LVS Routing
3.5.3. Creating Network Packet Filter Rules
3.6. Saving Network Packet Filter Settings
4. Configuring the LVS Routers with Piranha Configuration Tool
4.1. Necessary Software
4.2. Logging Into the Piranha Configuration Tool
4.3. CONTROL/MONITORING
4.4. GLOBAL SETTINGS
4.5. REDUNDANCY
4.6. VIRTUAL SERVERS
4.6.1. The VIRTUAL SERVER Subsection
4.6.2. REAL SERVER Subsection
4.6.3. EDIT MONITORING SCRIPTS Subsection
4.7. Synchronizing Configuration Files
4.7.1. Synchronizing lvs.cf
4.7.2. Synchronizing sysctl
4.7.3. Synchronizing Network Packet Filtering Rules
4.8. Starting LVS
A. Using LVS with Red Hat Cluster
B. Revision History
Index