Installation guide
response to the client. So, for example, if the client is on the Internet, and sends the packet
through the LVS router to a real server, the real server must be able to go directly to the client
via the Internet. This can be done by configuring a gateway for the real server to pass packets
to the Internet. Each real server in the server pool can have its own separate gateway (and
each gateway with its own connection to the Internet), allowing for maximum throughput and
scalability. For typical LVS setups, however, the real servers can communicate through one
gateway (and therefore one network connection).
Important
It is not recommended to use the LVS router as a gateway for the real servers, as that
adds unneeded setup complexity as well as network load on the LVS router, which
reintroduces the network bottleneck that exists in NAT routing.
Hardware
The hardware requirements of an LVS system using direct routing is similar to other LVS
topologies. While the LVS router needs to be running Red Hat Enterprise Linux to process the
incoming requests and perform load-balancing for the real servers, the real servers do not
need to be Linux machines to function correctly. The LVS routers need one or two NICs each
(depending on if there is a back-up router). You can use two NICs for ease of configuration and
to distinctly separate traffic — incoming requests are handled by one NIC and routed packets to
real servers on the other.
Since the real servers bypass the LVS router and send outgoing packets directly to a client, a
gateway to the Internet is required. For maximum performance and availability, each real server
can be connected to its own separate gateway which has its own dedicated connection to the
carrier network to which the client is connected (such as the Internet or an intranet).
Soft ware
There is some configuration outside of Piranha Configuration Tool that needs to be done,
especially for administrators facing ARP issues when using LVS via direct routing. Refer to
Section 3.2.1, “Direct Routing and arptables_jf” or Section 3.2.2, “Direct Routing and
iptables” for more information.
3.2.1. Direct Routing and arptables_jf
In order to configure direct routing using arptables_jf, each real server must have their virtual IP
address configured, so they can directly route packets. ARP requests for the VIP are ignored entirely by
the real servers, and any ARP packets that might otherwise be sent containing the VIPs are mangled to
contain the real server's IP instead of the VIPs.
Using the arptables_jf method, applications may bind to each individual VIP or port that the real
server is servicing. For example, the arptables_jf method allows multiple instances of Apache HT T P
Server to be running bound explicitly to different VIPs on the system. There are also significant
performance advantages to using arptables_jf over the iptables option.
However, using the arptables_jf method, VIPs can not be configured to start on boot using standard
Red Hat Enterprise Linux system configuration tools.
To configure each real server to ignore ARP requests for each virtual IP addresses, perform the
Chapter 3. Setting Up LVS
27