1.6. LVS — Un diagramme de blocs
LVS routers use a collection of programs to monitor cluster members and cluster services. Figure 1.5, « LVS Components » illustrates how these various programs on both the active and backup LVS routers work together to manage the cluster.
Figure 1.5. LVS Components
Le démon
pulse
est exécuté sur les deux routeurs LVS actifs et passifs. Sur le routeur de sauvegarde, pulse
envoie un signal heartbeat à l'interface publique du routeur actif afin de s'assurer que le routeur LVS actif fonctionne correctement. Sur le routeur actif, pulse
démarre le démon lvs
et répond aux requêtes heartbeat du routeur LVS de sauvegarde.
Une fois démarré, le démon
lvs
appelle l'utilitaire ipvsadm
afin de configurer et maintenir la table de routage IPVS (de l'anglais IP Virtual Server) dans le noyau et démarre un processus nanny
pour chaque serveur virtuel configuré sur chaque serveur réel. Chaque processus nanny
vérifie l'état d'un service configuré sur un serveur réel et indique au démon lvs
si le service sur ce serveur réel ne fonctionne pas correctement. Si un dysfonctionnement est détecté, le démon lvs
demande à l'utilitaire ipvsadm
de supprimer ce serveur réel de la table de routage IPVS.
Si le routeur de sauvegarde ne reçoit pas de réponse à partir du routeur actif, il initie un failover en appelant
send_arp
afin de réassigner toutes les adresses IP virtuelles aux adresses matérielles NIC (adresse MAC) du noeud de sauvegarde. Il envoie également une commande au routeur actif via les interfaces réseau publiques et privées afin d'arrêter le démon lvs
sur le routeur actif et démarre le démon lvs
sur le noeud de sauvegarde afin d'accepter les requêtes pour les serveurs virtuels configurés.
1.6.1. LVS Components
Section 1.6.1.1, «
pulse
» shows a detailed list of each software component in an LVS router.
1.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.
1.6.1.2. lvs
Le démon
lvs
s'exécute sur le routeur LVS actif une fois qu'il est appelé par pulse
. Il lit le fichier de configuration /etc/sysconfig/ha/lvs.cf
, appelle l'utilitaire ipvsadm
pour construire et maintenir la table de routage IPVS et assigne un processus nanny
à chaque service LVS configuré. Si nanny
reporte une panne sur un serveur réel, lvs
indique à l'utilitaire ipvsadm
de supprimer le serveur réel de la table de routage IPVS.
1.6.1.3. ipvsadm
Ce service met à jour la table de routage IPVS dans le noyau. Le démon
lvs
configure et administre LVS en appelant ipvsadm
pour ajouter, changer ou supprimer les entrées dans la table de routage IPVS.
1.6.1.4. nanny
Le démon d'analyse
nanny
est démarré sur le routeur actif. À travers ce démon, le routeur actif détermine l'état de fonctionnement de chaque serveur réel et, éventuellement, analyse sa charge de travail. Un processus séparé est démarré pour chaque service défini sur chaque serveur réel.
1.6.1.5. /etc/sysconfig/ha/lvs.cf
Il s'agit du fichier de configuration LVS. Directement ou indirectement, tous les démons obtiennent leurs informations de configuration à partir de ce fichier.
1.6.1.6. Piranha Configuration Tool
Il s'agit de l'outil Web pour analyser, configurer et administrer LVS. C'est l'outil par défaut pour maintenir le fichier de configuration LVS
/etc/sysconfig/ha/lvs.cf
.
1.6.1.7. send_arp
Ce programme envoie les diffusions ARP lorsque l'adresse IP flottante change d'un nœud à un autre durant le failover.
Chapitre 2, Configuration LVS initiale reviews important post-installation configuration steps you should take before configuring Red Hat Enterprise Linux to be an LVS router.