Installation guide

Chapter 7. Linux Virtual Server Overview 95
The pulse daemon runs on both the active and passive LVS routers. On the backup router,
pulse sends a heartbeat to the public interface of the active router to make sure the active
router is still properly functioning. On the active router, pulse starts the lvs daemon and
responds to heartbeat queries from the backup LVS router.
Once started, the lvs daemon calls the ipvsadm utility to configure and maintain the IPVS
routing table in the kernel and starts a nanny process for each configured virtual server on
each real server. Each nanny process checks the state of one configured service on one
real server, and tells the lvs daemon if the service on that real server is malfunctioning.
If a malfunction is detected, the lvs daemon instructs ipvsadm to remove that real server
from the IPVS routing table.
If the backup router does not receive a response from the active router, it initiates failover
by calling send_arp to reassign all virtual IP addresses to the NIC hardware addresses
(MAC address) of the backup node, sends a command to the active router via both the
public and private network interfaces to shut down the lvs daemon on the active router,
and starts the lvs daemon on the backup node to accept requests for the configured virtual
servers.
7.6.1. Components of an LVS Cluster
Section 7.6.1.1 pulse shows a detailed list of each software component in an LVS router.
7.6.1.1. pulse
This is the controlling process which starts all other daemons related to LVS routers. At
boot time, the daemon is started by the /etc/rc.d/init.d/pulse script. It then reads
the configuration file /etc/sysconfig/ha/lvs.cf. On the active router, pulse starts
the LVS daemon. On the backup router, pulse determines the health of the active router
by executing a simple heartbeat at a user-configurable interval. If the active router fails to
respond after a user-configurable interval, it initiates failover. During failover, pulse on
the backup router instructs the pulse daemon on the active router to shut down all LVS
services, starts the send_arp program to reassign the floating IP addresses to the backup
router’s MAC address, and starts the lvs daemon.
7.6.1.2. lvs
The lvs daemon runs on the active LVS router once called by pulse. It reads the configu-
ration file /etc/sysconfig/ha/lvs.cf, calls the ipvsadm utility to build and maintain
the IPVS routing table, and assigns a nanny process for each configured LVS service. If
nanny reports a real server is down, lvs instructs the ipvsadm utility to remove the real
server from the IPVS routing table.