À partir de la version 756 de Pandora FMS les système de synchronisation a été conçu de zéro pour des environnements avec le mode centralisé, en le rendant plus rapide et efficace, puisque les changements seront répliqués aux nœuds automatiquement sans besoin de synchronisation manuelle, comme avant.
Ce changement laisse le système précédent en désuétude, donc dans les environnements où il était actif, il faudra passer par le système de fusion automatique précédent (merge ) pour utiliser le nouveau système de centralisation et pouvoir garantir l'intégrité des données.
Lors de la mise à jour, tous les environnements Metaconsole déjà centralisés seront obligés de passer par la nouvelle section de l'outil de fusion (Merging tool) située dans la gestion centralisée (Centralised Management) afin d'être à nouveau centralisés correctement.
Le Merging tool va mélanger les différents éléments des bases de données des nœuds et de la Métaconsole (de ceux qui doivent être gérés depuis la Métaconsole) comme suit : Un ordre de priorité sera établi entre les nœuds et la Métaconsole, plaçant les éléments les plus prioritaires en haut de la liste et en bas les moins prioritaires.
Par exemple :
Seulement les nœuds configurés dans la Métaconsole qui ne sont pas désactivés sont tenus sur compte pour le processus de mélange.
Cette liste de priorité est utilisée pour les cas où le même élément existe dans les différents nœuds mais a des configurations différentes. Par exemple, que les 2 nœuds et la Métaconsole ont le groupe « Bases de données ». Avec cet ordre de priorité, la configuration de l'élément le plus prioritaire sera prise pour tous, dans l'exemple de la Métaconsole.
Dans un autre cas, si par exemple seuls les nœuds 1 et 2 avaient une politique appelée « Windows », pour tous les nœuds et la Métaconsole, la configuration de cette politique serait celle du nœud 1 (on saute la Métaconsole car elle ne l'a pas).
Uniquement pour les propres paramètres de la politique (groupe, description,…). Les modules, alertes et autres éléments de la politique sont considérés comme des éléments distincts indépendants de la politique et sont donc également fusionnés.
Dans le cas des politiques il serait l'élément le plus particulier de tous les éléments synchronisés par son mode de configuration, suique chaque plugin, module et alerte… sont traités comme des éléments independantes et pas comme une partie de la configuration de la politique. C'est à dire, dans l'example précédent de la politique et le regardant seulement avec des modules, si vous avez :
Le résultat de l'unifiction du Merging tool serait :
Cela permet au résultat d'avoir autant de configurations différentes que possible afin que vous puissiez maintenant les gérer depuis la Métaconsole.
Les éléments suivants sont ceux qui sont centralisés depuis le nouveau Merging tool:
Vérifiez que vous ajustez le paramètre autocreate_group
des fichiers de configuration des serveurs pandora_server.conf
par un ID de groupe valide après avoir unifié depuis le Merging tool.
Les sections où ces éléments sont gérés de manière centralisée seulement peuvent se gérer depuis la Métaconsole. Dans le cas d'accèder à ces éléments depuis les nœuds, vous ne pouvez que les lister, et vous ne trouverez pas les options d'édition et de création. Vous verrez un avis qui vous indiquera que l'énvironement Test sous mode centralisé, avec un lien à l'administrateur à la section de ña Métaconsole correspondante pour la configuration de ces éléments.
Les tableaux suivants sont synchronisés entre la Metaconsole et les nœuds du Merging tool (voir également « Tables principales de la base de données ») :
console_api_url http://localhost/pandora_console/include/api.php console_api_pass pandora
memory_limit
de fichier de configuration php.ini
mis à -1
, c'est-à-dire sans limite, mais uniquement pour le processus de fusion. Après l'avoir terminé, il est recommandé de le remettre à la valeur précédente. C'est le cas, puisque beaucoup de mémoire est utilisée pour fusionner les nœuds, et dans un très grand environnement (avec de nombreux éléments différents) une grande quantité de mémoire peut être utilisée, de cette façon vous vous assurez que le système peut utiliser toute la mémoire disponible. Si les éléments à fusionner dépassent la valeur de la mémoire physique disponible sur le serveur, le Merging tool échouera en raison d'une erreur inattendue, et dans les journaux de la console/Apache, vous verrez la ligne indiquant l'excès de mémoire atteint.post_max_size
du fichier de configuration php.ini
supérieure ou égale par rapport à la valeur configurée pour le même paramètre de la Métaconsole. La valeur doit être aussi grand que la taille de la collection de fichiers plus grande que vous avez. Il faut également tenir compte du fait que ce paramètre doit avoir une valeur supérieure ou égale, tant dans les nœuds que dans la Metaconsole, à la valeur de upload_max_filesize
.upload_max_filesize
du fichier de configuration php.ini
supérieure ou égale par rapport à la valeur configurée pour le même paramètre de la Métaconsole. La valeur doit être aussi grand que la taille de la collection de fichiers plus grande que vous avez.
Si toutes ces exigences ne sont pas remplies, la fusion de nœuds ne sera pas effectué et une erreur sera générée. Si vous consultez les erreurs du résultat, cela vous donnera un message des exigences encore en suspens.
Il est important une fois l'unification de la base de données effectuée que la valeur correspondante du memory_limit
de fichier de configuration php.ini
soit remise (rappelez-vous que pour que la modification prenne effet, le service apache httpd doit être redémarré)
Bien qu'ils ne sont pas des exigénces pour le processus d'unification des bases de données con récommande fortement de faire ces actions :
pandora_db
pour la durée du processus, pour les mêmes raisons que le serveur.
Lorsque le processus de fusion démarre, les nœuds et la Métaconsole passent en mode maintenance. Le but de ceci est le même que la recommandation d'arrêter les serveurs et lepandora_db
, pour empêcher un utilisateur de modifier des éléments au cours du processus, ce qui peut provoquer des erreurs ou des incohérences.
Le processus d'unification a 2 étapes différentes, une première étape pour synchroniser les différents éléments gérables depuis la Métaconsole et une seconde étape pour mettre à jour les réferences dans les événements à ces éléments centralisés. Ce processus se fait de cette manière pour permettre que la console soit accesible encore un fois aussi tôt que possible, puique la mise à jour des éléments est la partie du processus qui peut prendre lus de temps car elle a habituellement la plus grande quantité d'information. Les deux étapes sont divisés en deux sous-étapes diférenciées en deux barres de progrès.
Dans cette étape les éléments trouvés dans les bases de données de tos les nœuds gérables depuis la Métaconsole sont synchronisés. Il s'agit du processus d'unification et est sous divisé en deux étapes, chacune avec sa barre de progrès :
pandora_console/attachment/merge_backups
Si des erreurs surviennent au cours de ce processus (par exemple, perte de connexion avec une base de données), le processus lui-même tentera de restaurer les sauvegardes générées (une troisième barre de progression rouge apparaîtra qui marquera la progression de la restauration).
Si la raison de l'échec empêche la récupération des sauvegardes, la récupération doit être effectuée manuellement.
PArfois vous pouvez trouver des erreurs, par exemple la perte de connexion momentané entre la Métaconsole et la base de données d'un nœud ou l'imposibilité de créer une sauvegarde car vous n'avez pas d'espace dans le disque, donc il est possible que le message d'erreur montrè soit générique. Si c'est le cas, veuillez contacter l'équipe de support Pandora FMS pour recevoir de l'assistance.
Dans cette étape les références existantes dans les événements aux différents éléments synchronisés seront mis à jour (par exemple à groupes). L'étape est sous divisé en la mise à jour des événements de la base de données principale et la mise à jour des événements de la base de données historique et seulement affectera les événements qui existent avant de lancer le processus d'unification. Les nouveaux événements générées après avoir centralisé l'environnement auront toutes les références correctement et ne será pas nécessaire de les mettre à jour.
pandora_db
peuvent être redémarrés normalement et les utilisateurs standard peuvent à nouveau accéder à la console. Bien sûr, vous verrez dans la vue des événements la barre de processus de mise à jour pour tous les événements, donc pour cette partie vous pouvez encore avoir des incohérences (en ce qui concerne les filtres par exemple) uniquement pour les événements qu'il y avait avant la fusion. De nouveaux événements seraient générés normalement. Cette phase et ce processus sont lancés par chacun des nœuds, via une tâche spécifique dans le cron de la console. En raison du volume d'informations, la tâche peut être lourde et longue. Dans la mesure du possible, moins l'environnement est chargé à ce moment-là, mieux c'est (essayez de le lancer en dehors des heures les plus chargées sur Pandora FMS).
Une fois la phase 1 terminée, l'environnement sera considéré comme centralisé, et à partir de là vous pourrez tout gérer depuis la Métaconsole. La synchronisation des éléments a également été modifiée, désormais le processus pandora_ha
de chaque nœud est en charge de synchroniser sa base de données avec celle de la Métaconsole.
Lorsque nous apportons une modification à la Métaconsole (par exemple, créer un utilisateur), cela met en file d'attente les requêtes nécessaires dans la base de données pour les nœuds (INSERTS
, UPDATES
, etc.) que pandora_ha
lit de manière ordonnée et exécute dans chaque server_threshold. Cela garantit que si un serveur est en panne pendant un certain temps, lorsqu'il est redémarré, il peut reprendre sa vitesse correctement.
Cette liste de requêtes en attente peut être consultée à partir de la Métaconsole dans la section Consoles setup. Si pour une raison quelconque une requête échoue, le nœud ne continuera pas avec les autres, nous verrons une erreur dans Consoles setup et il sera nécessaire de la traiter manuellement par un administrateur. Dans la plupart des cas, vous devriez pouvoir le résoudre en lançant à nouveau le processus de fusion dans le Merging tool.
Pour ajouter un nouveau nœud à un environnement centralisé, allez dans Setup → Metasetup → Consoles setup dans la Metaconsole et cliquez sur le bouton New node. Tous les champs doivent être remplis pour réaliser la connexion et au moment de l'enregistrement, selon qu'il s'agit d'un nœud complètement nouveau, sans aucune donnée, il sera ajouté à l'aide du bouton Register empty node, sinon le bouton Register node with data to merge sera utilisé.
Appuyez sur Ok si vous êtes sûr et le nouveau nœud sera centralisé.