Remarques relatives au dimensionnement du groupe central
La quantité de ressources système, telles que l'unité centrale et la mémoire, consommées par le gestionnaire de haute disponibilité n'augmente pas de manière linéaire à mesure que la taille d'un groupe central s'accroît. Par exemple, le protocole de synchronisation de la vue mis en oeuvre par le gestionnaire de haute disponibilité utilise massivement ces ressources dans le but d'assurer la cohésion des membres du groupe central. Un groupe central de grande taille peut donc consommer un volume très important de ressources.
- du nombre d'applications exécutées ;
- du type d'applications exécutées ;
- des services du gestionnaire de haute disponibilité utilisés.
Lors de la définition de la taille du groupe central, vous devez vous assurer que :
- Tous les processus contenus dans la cellule sont correctement distribués dans des groupes centraux de taille adaptée. Cela permet de limiter la quantité de ressources consommées par le protocole de synchronisation de la vue.
- Tous les processus contenus dans un groupe central sont configurés de manière à prendre en charge les services à haute disponibilité utilisés au sein de ce groupe.
Même si votre système fonctionne correctement, envisagez de mettre en oeuvre une ou plusieurs techniques ci-dessous pour configurer le gestionnaire de haute disponibilité dans des cellules de grande taille. Il existe deux techniques de base :
- Désactivation du gestionnaire de haute disponibilité si ce dernier n'est pas requis.
- Distribution des processus dans différents groupes centraux reliés entre eux par le biais d'une passerelle de groupe central.
Ajustement de la taille d'un groupe central
- Le premier et le plus significatif d'entre eux est l'établissement du protocole de synchronisation de la vue au sein d'un ensemble de membres actifs du groupe central. Cette activité est généralement appelée modification de la vue.
- Le deuxième aspect correspond aux tâches de reconnaissance planifiées à intervalle régulier et aux tâches de détection des incidents exécutées en arrière-plan par le gestionnaire de haute disponibilité.
- Le troisième aspect est lié à l'utilisation des ressources dans le cas où d'autres composants de produits utilisent les services fournis par le gestionnaire de haute disponibilité.
- Modifications de la vue
Le protocole de synchronisation de la vue crée une vue à chaque fois qu'il détecte une modification au sein des membres actifs du groupe central. Une modification de la vue se produit généralement à chaque fois qu'un membre du groupe central démarre ou s'arrête. Lorsqu'il démarre, le membre ouvre une connexion avec tous les autres membres du groupe central en cours d'exécution. Lorsqu'il s'arrête, les autres membres du groupe central détectent la fermeture des connexions établies avec le membre arrêté. Dans l'un et l'autre cas, le protocole de synchronisation de la vue doit prendre en compte cette modification. Lorsqu'un nouveau membre a démarré, le protocole de synchronisation de la vue doit créer une vue incluant ce membre. Lorsqu'un membre s'est arrêté, le protocole de synchronisation de la vue doit créer une vue qui contient les membres encore présents dans le groupe central, à l'exclusion du membre arrêté.
La création d'une vue est une activité importante qui utilise une grande quantité de ressources système, en particulier pour les groupes centraux de grande taille.- Chaque membre du groupe central en cours d'exécution doit communiquer son état aux autres membres du groupe, y compris des informations relatives aux messages qu'il a envoyés ou reçus dans la vue en cours.
- Pour qu'une nouvelle vue puisse être installée, tous les messages envoyés dans celle-ci doivent avoir été reçus et reconnus comme tels par tous leurs destinataires. Dans des conditions d'exécution normales, l'émission d'un accusé de réception prend du temps. Le traitement des messages au niveau d'une modification de la vue nécessite la mise en oeuvre d'un système d'accusé de réception et de retransmission particulièrement performant.
- Tous les membres du groupe central doivent transmettre des données relatives à leur état en cours, telles que l'ensemble des membres d'un autre groupe central avec lequel ils peuvent communiquer activement.
A mesure que le nombre de membres actifs augmente, l'installation d'une nouvelle vue entraîne une augmentation temporaire plus forte et non linéaire du taux d'utilisation de l'unité centrale par le gestionnaire de haute disponibilité. Il est bien plus coûteux en termes de ressources d'ajouter ou de supprimer un membre d'un groupe central qui compte 50 membres plutôt que 20.
L'installation d'une nouvelle vue entraîne également des modifications d'état dans les composants du produit qui utilisent le gestionnaire de haute disponibilité. Par exemple, il peut s'avérer nécessaire de mettre à jour les tables de routage afin qu'elle prennent en compte le membre démarré ou arrêté, mais aussi de redémarrer un service singleton sur un nouveau membre.
En fin de compte, l'installation d'une nouvelle vue entraîne une hausse transitoire importante du taux d'utilisation de l'unité centrale. Si la taille des groupes centraux s'accroît exagérément, les temps de réponse du réseau risquent de se dégrader au niveau de la modification de la vue. Dans ces conditions, l'installation d'une nouvelle vue échoue le plus souvent. Le processus de reprise sollicite également beaucoup l'unité centrale. Lorsque cette dernière est saturée ou qu'une pagination est mise en oeuvre, les échecs peuvent rapidement se multiplier.
- Tâches en arrière-plan
Le gestionnaire de haute disponibilité exécute à intervalle régulier un certain nombre de tâches en arrière-plan, telles que la vérification de l'état des services singleton à haute disponibilité dont il assure la gestion. La plupart de ces tâches en arrière-plan sollicitent très peu l'unité centrale. Il n'en va pas de même pour les protocoles de reconnaissance et de détection des incidents planifiés à intervalle régulier.
Le protocole de reconnaissance tente d'établir des communications entre les membres du groupe central qui ne sont pas connectés, y compris les processus qui ne sont pas en cours d'exécution. Pour un groupe central donné contenant N membres, dont M sont actifs, M x (N – M) messages environ sont générés au cours de chaque période de reconnaissance. Ainsi, la création d'un grand nombre de processus qui ne démarrent jamais a une incidence négative sur le taux d'utilisation de l'unité centrale par le protocole de reconnaissance.
De même, lors de l'exécution du protocole de détection des incidents, chaque membre du groupe central envoie des signaux de présence à toutes les connexions qu'il a établies avec les autres membres du groupe. Pour les M membres actifs, M x (M-1) messages de présence sont envoyés. Si la détection des incidents doit être configurée au maximum de ses capacités, la taille du groupe central peut avoir une incidence négative sur le taux d'utilisation de l'unité centrale lors de l'envoi des signaux de présence entre les différents membres du groupe.
Le taux d'utilisation de l'unité centrale par ces deux protocoles pourraitêtre réduit en utilisant des groupes centraux de plus petite taille. Par exemple, si un groupe central contient 100 membres actifs, 9900 messages de présence sont envoyés au cours de chaque période de détection des incidents. Le fait de scinder ce groupe en cinq groupes centraux de 20 membres réduit le nombre de messages générés à 1900, ce qui représente une baisse significative.
- Utilisation externe
- D'autres composants de produits, tels que la gestion de la charge de travail (WLM) et la configuration On Demand, utilisent les services fournis par le gestionnaire de haute disponibilité, tels que l'échange d'état de serveur actif, pour gérer les informations de routage. Le taux d'utilisation de l'unité centrale par ces composants est lié à la taille du groupe central. Par exemple, l'utilisation de la fonction d'échange d'état de serveur actif afin de générer des informations de routage à haute disponibilité est liée à la taille du groupe central.
Distribution des processus entre plusieurs groupes centraux
- La première consiste à désactiver le gestionnaire de haute disponibilité pour les processus qui n'utilisent pas ses services.
- La seconde consiste à veiller à ce que les groupes centraux soit toujours de petite taille.
La solution pour limiter le taux d'utilisation de l'unité centrale par le gestionnaire de haute de disponibilité consiste à limiter la taille du groupe central. Il vaut mieux avoir plusieurs groupes centraux de petite taille qu'un seul groupe central de grande taille. Si vous avez des cellules de grande taille, créez plusieurs groupes centraux.
Le matériel sur lequel vous exécutez le produit est également un facteur essentiel pour déterminer la taille du groupe central adaptée à votre environnement.
Scindez les groupes de taille supérieure en groupes plus petits. Si les groupes centraux ainsi générés doivent partager des informations de routage, utilisez des passerelles de groupes centraux pour les relier entre eux.
Tailles de groupe central
- Lorsque vous affectez à la propriété personnalisée IBM_CS_WIRE_FORMAT_VERSION de groupe central la valeur 6.1.0, vous améliorez le protocole du groupe central. Ces améliorations sont disponibles uniquement dans la version 6.1 et les versions suivantes.
- Lorsque vous affectez à la propriété personnalisée IBM_CS_HAM_PROTOCOL_VERSION de groupe central la valeur 6.0.2.31, vous améliorez l'utilisation de la mémoire et les caractéristiques du basculement des ponts intergroupes centraux.
- Vous pouvez ajuster les paramètres de mémoire de transport. Il existe deux paramètres de mémoire ou de taille de mémoire tampon associés au transport de groupe central.
Les valeurs par défaut de ces paramètres sont suffisantes pour les petits groupes centraux de 50 membres maximum. Pour les groupes centraux de plus de 50 membres, vous devez utiliser des valeurs supérieures aux valeurs par défaut de ces paramètres. Remarque : L'augmentation de la valeur de ces paramètres de mémoire de transport ne se matérialise pas directement par une allocation de mémoire plus statique ou une utilisation de mémoire à long terme par le gestionnaire haute disponibilité.
- Les groupes centraux de 100 membres fonctionnent sans problème.
- Les groupes centraux de plus de 100 membres doivent fonctionner sans problème dans la plupart des topologies. Il est recommandé de ne pas utiliser des groupes centraux de plus de 200 membres.
Ajustement des groupes centraux individuels en fonction de la combinaison d'applications et des services utilisés
Il peut s'avérer nécessaire d'ajuster plus avant chaque groupe central en fonction de la combinaison d'applications et de services à haute disponibilité utilisés par les membres de ces groupes.
- Ajustez la fréquence d'exécution du protocole de reconnaissance et du protocole de détection des incidents par défaut si les paramètres par défaut ne sont pas adaptés.
- Configurez le coordinateur de groupe central afin qu'il s'exécute sur un processus ou un ensemble de processus spécifique.
- Scindez le coordinateur sur plusieurs instances si la consommation des ressources par les processus connexes est perceptible.
- Définissez la quantité de mémoire disponible pour les services DCS (Distribution and Consistency Services) et les composants RMM (Reliable Multicast Messaging) pour envoyer des messages réseau lorsqu'une surcharge est détectée. Cet incident peut se produire dans certaines conditions, même si la réplication mémoire à mémoire n'est pas utilisée.
Ajustement des fourchettes de ports temporaires
Le nombre de sockets utilisées par un groupe central ne pose généralement pas problème. Chaque membre du groupe central doit établir une connexion avec chacun des autres membres du groupe. Ainsi, le nombre de connexions s'accroît de manière exponentielle (n élevé au carré) car chaque connexion requiert deux sockets, une à chaque extrémité. Etant donné qu'en général plusieurs machines sont mises en oeuvre, vous n'avez pas besoin de vous préoccuper du nombre de sockets utilisées par un groupe central. En revanche, si un nombre trop élevé de membres de groupe central s'exécute sur une seule machine, vous pourriez être amené à ajuster les paramètres du système d'exploitation qui sont liés aux fourchettes de ports temporaires. Par défaut, ces dernières sont gérées différemment d'un système d'exploitation à l'autre.
