1.6. LVS — A Block Diagram
Figure 1.5. LVS Components
pulsedaemon runs on both the active and passive LVS routers. On the backup router,
pulsesends a heartbeat to the public interface of the active router to make sure the active router is still properly functioning. On the active router,
lvsdaemon and responds to heartbeat queries from the backup LVS router.
lvsdaemon calls the
ipvsadmutility to configure and maintain the IPVS routing table in the kernel and starts a
nannyprocess for each configured virtual server on each real server. Each
nannyprocess checks the state of one configured service on one real server, and tells the
lvsdaemon if the service on that real server is malfunctioning. If a malfunction is detected, the
ipvsadmto remove that real server from the IPVS routing table.
send_arpto 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
lvsdaemon on the active router, and starts the
lvsdaemon on the backup node to accept requests for the configured virtual servers.
1.6.1. LVS Components
pulse” shows a detailed list of each software component in an LVS router.
/etc/rc.d/init.d/pulsescript. It then reads the configuration file
/etc/sysconfig/ha/lvs.cf. On the active router,
pulsestarts the LVS daemon. On the backup router,
pulsedetermines 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,
pulseon the backup router instructs the
pulsedaemon on the active router to shut down all LVS services, starts the
send_arpprogram to reassign the floating IP addresses to the backup router's MAC address, and starts the
lvsdaemon runs on the active LVS router once called by
pulse. It reads the configuration file
/etc/sysconfig/ha/lvs.cf, calls the
ipvsadmutility to build and maintain the IPVS routing table, and assigns a
nannyprocess for each configured LVS service. If
nannyreports a real server is down,
ipvsadmutility to remove the real server from the IPVS routing table.
lvsdaemon sets up and administers LVS by calling
ipvsadmto add, change, or delete entries in the IPVS routing table.
nannymonitoring daemon runs on the active LVS router. Through this daemon, the active router determines the health of each real server and, optionally, monitors its workload. A separate process runs for each service defined on each real server.
18.104.22.168. Piranha Configuration Tool
/etc/sysconfig/ha/lvs.cfLVS configuration file.