Composants d'une grappe
Plusieurs composants -- le gestionnaire de grappe, l'annuaire des bases de grappes, le gestionnaire de l'annuaire des bases de grappe, l'administrateur de grappe et le réplicateur de grappe-- interagissent pour permettre un fonctionnement optimal de la mise en grappe. Par ailleurs, le gestionnaire de grappes Internet met en grappe les serveurs HCL Domino® qui exécutent des protocoles Internet.
Gestionnaire de grappes (Cluster Manager)
Un gestionnaire de grappes s'exécute sur chaque serveur d'une grappe et assure le suivi de l'état de tous les autres serveurs de la grappe. Il répertorie les serveurs disponibles et met à jour les données d'équilibrage des charges de chaque serveur.
Lorsque vous ajoutez un serveur à une grappe, Domino® lance automatiquement Cluster Manager sur le serveur en question. Tant que le serveur appartient à la grappe, Cluster Manager s'exécute à chacun de ses lancements.
Chaque composant Cluster Manager contrôle la grappe en échangeant des messages et des analyses avec les autres serveurs de la grappe. Grâce à ces analyses, Cluster Manager détermine la charge de travail et la disponibilité des autres serveurs de la grappe. Lorsqu'une demande utilisateur doit être redirigée vers une réplique, Cluster Manager recherche dans Cluster Database Directory les serveurs de la grappe contenant une réplique de la base demandée. Cluster Manager indique ensuite au client les serveurs résultant de la recherche ainsi que la disponibilité de chacun. Le client n'a plus qu'à rediriger la demande vers le serveur approprié le plus disponible.
Les tâches du gestionnaire de grappes (Cluster Manager) sont les suivantes :
- identification des serveurs appartenant à la grappe via un contrôle régulier de l'annuaire Domino® afin de détecter les modifications au niveau du Nom de grappe dans le document Serveur et consultation de la liste des éléments de la grappe.
- contrôle de la disponibilité et de la charge de travail des serveurs de la grappe
- notification aux autres gestionnaires de grappes des modifications de disponibilité des serveurs
- communication aux clients des répliques et serveurs disponibles afin que les clients puissent rediriger les demandes d'accès aux bases (basculement) en conséquence
- équilibrage des charges des serveurs de la grappe selon la disponibilité des autres serveurs
- consignation d'événements de basculement et d'équilibrage de la charge de travail dans le fichier journal du serveur.
Cluster Manager commence par contrôler l'annuaire Domino® afin d'identifier les serveurs qui appartiennent à la grappe. Il conserve ces informations dans la mémoire cache de nom de grappe correspondant. Cluster Manager les utilise ensuite pour échanger des analyses avec d'autres composants Cluster Manager. Cluster Manager se sert également du cache de nom de grappe pour stocker les données de disponibilité résultant de ces analyses. Ces informations permettent à Cluster Manager d'exécuter les actions répertoriées ci-dessus, comme le basculement et l'équilibrage des charges.
Pour consulter les informations du cache de nom de grappe, entrez show cluster au niveau de la console du serveur.
Annuaire des bases de grappe (Cluster Database Directory)
Une réplique de la base Annuaire des bases de grappe (cldbdir.nsf) réside sur chacun des serveurs d'une grappe. Cette base contient un document sur chaque base de documents et réplique de la grappe, reprenant des informations telles que le nom de la base, le nom du serveur, le chemin d'accès, l'ID de réplique ainsi que d'autres données d'accès et de réplication. Les composants de la grappe utilisent ces données dans le cadre de leurs tâches, telles que l'identification des chemins de basculement, le contrôle des accès aux bases ainsi que la détermination des événements à répliquer et de l'endroit où la réplication doit avoir lieu.
Gestionnaire de l'annuaire des bases de grappe (Cluster Database Directory Manager)
Le gestionnaire de l'annuaire des bases de grappe (Cluster Database Directory Manager), sur chaque serveur, crée la base Cluster Database Directory et la tient à jour en y incluant les données les plus récentes sur les bases. Lorsque vous ajoutez un serveur à une grappe, Cluster Database Directory Manager crée la base Cluster Database Directory sur le serveur en question. Lorsque vous ajoutez une base à un serveur en grappe, Cluster Database Directory Manager crée un document dans Cluster Database Directory contenant des informations sur cette base. Lorsque vous supprimez une base d'un serveur en grappe, Cluster Database Directory Manager supprime ce document de Cluster Database Directory. Le gestionnaire de l'annuaire des bases de grappe effectue également le suivi de chaque base, comme par exemple les bases identifiées comme étant Hors service (non disponible pour les utilisateurs) ou En instance de suppression de la grappe.
En cas de modification dans Cluster Database Directory, le réplicateur de grappe (Cluster Replicator) réplique immédiatement cette modification dans la base Cluster Database Directory de chaque serveur de la grappe, d'où l'assurance que chaque élément de la grappe dispose d'informations à jour sur ses bases de documents.
Administrateur de grappe (Cluster Administrator)
L'administrateur de grappe effectue un grand nombre des tâches de servitude liées à la gestion des grappes. Par exemple, lorsque vous ajoutez un serveur à une grappe, Cluster Administrator lance Cluster Database Directory Manager, Cluster Replicator ainsi que le processus d'administration, s'il ne s'exécute pas déjà. Lorsque vous supprimez un serveur d'une grappe, Cluster Administrator interrompt Cluster Database Directory Manager et Cluster Replicator. Il supprime également la base Cluster Database Directory de ce serveur, puis efface les enregistrements relatifs à ce dernier des bases Cluster Database Directory des autres serveurs.
Réplicateur de grappe (Cluster Replicator)
Le réplicateur de grappe synchronise en permanence les données entre les répliques d'une grappe. Dès qu'une modification survient dans une base de la grappe, ce programme envoie rapidement la modification aux autres répliques de la base, d'où la garantie pour les utilisateurs d'accéder à chaque fois à une version à jour de la base. Cluster Replicator réplique également les modifications sur les dossiers privés d'une base. Chaque serveur d'une grappe exécute par défaut un seul programme Cluster Replicator. Toutefois, si l'activité dans la grappe est importante, vous pouvez lancer plusieurs programmes Cluster Replicator.
Cluster Replicator recherche dans Cluster Database Directory les bases de documents disposant de répliques sur d'autres éléments. Cluster Replicator stocke les informations en mémoire et les utilise pour répliquer les modifications sur les autres serveurs. Régulièrement (par défaut, toutes les 15 secondes), Cluster Replicator vérifie la présence de modifications dans Cluster Database Directory. En cas de modification (une base ajoutée, supprimée ou une base pour laquelle Cluster Replication est désactivé, par exemple), il met à jour les données en mémoire.
Cluster Replicator envoie les modifications aux serveurs de la grappe uniquement. C'est le réplicateur standard (REPLICA) qui réplique les modifications vers et depuis les serveurs extérieurs à la grappe.