Migration vers un autre système

Il peut y avoir de nombreuses raisons de migrer un serveur PFMS et sa console Web, qui se trouvent généralement sur la même machine réelle ou virtuelle (Pandora FMS monolith environment).

Exemples possibles :

  • Une nouvelle version de Pandora FMS peut nécessiter un système d'exploitation différent, par exemple, la migration de CentOS 7 vers Rocky Linux 8 ou de Rocky Linux 8 vers RedHat Enterprise (RHEL) 8.
  • Cela peut aussi être le cas d'une migration d'un fournisseur de services Web à un autre : Pandora FMS utilise moins de données que le fait de faire une image de l'ensemble du système d'exploitation.
  • Dans le cas d'audits ou pour tester de nouvelles fonctionnalités, il est nécessaire de disposer d'une copie du serveur principal.

Procédure

Généralement, le chemin d'accès complet à la console Web PFMS est

/var/www/html/pandora_console

et dans les instructions suivantes, il est abrégé en $CONSOLE_PATH .

Exportation de données

1.- Effectuez une sauvegarde de la base de données du système précédent. Il y a plusieurs étapes, ouvrez une fenêtre de terminal avec des droits d'administrateur (utilisateur root) :

  • Commencez par faire une copie logique de la base de données avec la commande suivante :
mysqldump --single-transaction --max_allowed_packet=512M -u root -p pandora> backup_pandora_X.Y.sql
  • Le fichier résultant précédent ( backup_pandora_X.Y.sql ) sera compressé avec les données suivantes afin d'avoir un seul fichier pour le déplacement. Par exemple backup_pandora_X.Y.tar.gz , format compressé qui préserve les valeurs intrinsèques de chaque fichier.
  • Compressez tous les fichiers de configuration existants dans le répertoire /etc/pandora/*.conf.
  • Compressez l'intégralité du répertoire et des sous-répertoires de $CONSOLE_PATH/attachment/ .
  • Les images et icônes personnalisées dans $CONSOLE_PATH/images/ , le cas échéant.
  • Compressez l'intégralité du répertoire /var/spool/pandora/data_in/.
  • Compressez tous les plugin du serveur situés dans /usr/share/pandora_server/util/plugin/ . S'ils ont un ou plusieurs plugins du serveur situés dans un autre répertoire non indiqué, ils doivent également être compressés.
  • Compresser toutes les dépendances installées sur le serveur source, nécessaires au bon fonctionnement des scripts ou plugins installés sur le serveur source et introuvables sur le serveur cible. Les systèmes avancés devront installer complètement les environnements de développement intégrés (ou IDE d'environnement de développement intégré).
  • Compressez tous les certificats SSL et la configuration personnalisée du serveur Web Apache situés dans /etc/httpd/ , s'il existe de tels fichiers.

Vous êtes seul responsable de la sauvegarde de vos données. Notez sur papier et crayon la procédure que vous choisirez pour le transfert de données. Attention, utilisez la redondance en termes de sauvegardes et de procédures avec plusieurs personnes vous aidant dans le processus.

Importation de données

2.- Installez le nouveau système Pandora FMS à partir de zéro, nous recommandons l'outil d'installation en ligne.

3.- Fermez tous les processus en cours d'exécution sur le nouveau système, sauf mysql ; démarrer avec Pandora FMS (à partir de la version NG 754, il existe des options supplémentaires pour le démarrage et l'arrêt manuels des environnements haute disponibilité HA) :

   /etc/init.d/pandora_server stop
   /etc/init.d/pandora_agent_daemon stop
   /etc/init.d/tentacle_server stop

4.- L'arrêt du serveur Apache dépendra de la distribution que vous utilisez :

/etc/init.d/apache2 stop
/etc/init.d/httpd stop
systemctl restart httpd.service

5.- Ensuite, envoyez ou copiez, de la manière la plus simple, le fichier backup_pandora_X.Y.tar.gz de l'ancien système vers le nouveau. Décompressez les fichiers dans leurs emplacements correspondants.

6.- Entrez mysql avec l'utilisateur root. Accédez à la base de données Pandora FMS dans le nouveau système, par défaut pandora et importez la base de données.

   # mysql -u root -p
   mysql>utiliser pandora
   Base de données modifiée
   mysql>source ~/backup_pandora_X.Y.sql

Ce chemin variera en fonction du répertoire où vous avez l'ancienne sauvegarde du système , ici on suppose que vous l'avez dans votre répertoire personnel ($HOME).

7.- Si vous migrez vers une version majeure, où la structure de la base de données change, ce serait le moment d'exécuter les scripts de migration comme indiqué dans la procédure de mise à jour de la version majeure.

8.- Si vous avez effectué un changement de distribution, tenez compte du fait que le chemin ou PATHde la console Web a été modifié et, dans ce cas, certains champs de la base de données ont également été modifiés. modifié, comme la table tconfig et ses champs attachment_store et fontpath. Pour modifier ces champs, vous devez entrer ces instructions (query). L'exemple concerne une migration vers Rocky Linux 8 ; dans d'autres distributions, changez le chemin du répertoire Apache.

# mysql -u root -p> utilise pandora ;
    Base de données modifiée> UPDATE tconfig SET value = '/var/www/html/pandora_console/attachment' WHERE token LIKE 'attachment_store';> UPDATE tconfig SET value = '/var/www/html/pandora_console/include/fonts/smallfont.ttf ' WHERE token LIKE 'fontpath';

Ces PATH doivent également être pris en compte dans les fichiers de configuration du serveur et de la console (fichiers config.php et pandora_server.conf).

9.- Une fois la base de données migrée, vous devez vérifier si les fichiers …/pandora_console/include/config.php et /etc/pandora/pandora_server.conf et les nouveaux ils ont les mêmes données dans les champs dbname, dbuser et dbpass.

  • S'ils sont identiques, passez à l'étape numéro 10.
  • S'ils sont différents, choisissez une seule des options suivantes :
    • Option ( a ): Remplacez les nouveaux fichiers par les anciens.
    • Option ( b ): Copiez les données ( dbname, dbuser et dbpass ) des anciens fichiers vers les nouveaux.
    • Option © : accorder des autorisations à la base de données avec les données de la nouvelle installation. En supposant que la nouvelle installation possède ces données : dbname=pandora, dbuser=pandora1 et dbpass=pandora2, l'exemple prend la forme :
# mysql -u root -p> accorde tous les privilèges sur pandora.* à 'pandora1'@'localhost' identifié par 'pandora2';> flush privilèges;

10.- Après cela, redémarrez tous les daemon et vous pourrez accéder à la console Pandora FMS, avec tous les agents, modules, alertes , etc.

11.- Si dans le nouveau hôte l'adresse IP ou l'URL a changé, tous les Agents locaux se rapporteront à ce nouveau système. Pour les agents logiciels, vous devez modifier le paramètre server_ip dans chacun d'eux.

12.- Utilisez, dans Operaciones Masivas, agents d'édition pour finaliser tous les détails en attente.

Dans le cas d'une version Enterprise, le même processus sera suivi.