Gestion et administration du serveur
Démarrage et arrêt manuels des serveurs Pandora FMS
Gardez à l'esprit que si, pour des raisons de maintenance, vous souhaitez arrêter manuellement le serveur Pandora FMS, vous devez vérifier si un Watchdog de services est en cours d'exécution. Voir cette section pour plus de détails.
Pour démarrer et/ou arrêter manuellement uniquement le serveur Pandora FMS, vous devez exécuter ce qui suit dans une console shell:
- Arrêter le daemon:
/etc/init.d/pandora_server stop-server
- Démarrer le daemon:
/etc/init.d/pandora_server start-server
- Redémarrer daemon:
/etc/init.d/pandora_server restart-server
Vous pouvez contrôler l'état de pandora_ha à travers systemd avec:
systemctl status pandora_ha.service
Gestion des bases de données
Il existe un outil essentiel au bon fonctionnement de Pandora FMS qui est chargé d'effectuer les tâches de maintenance. Son emplacement est le suivant:
/usr/bin/pandora_db
Cet outil, ci-après pandora_db, est inclus dans le paquetage du serveur Pandora FMS, il doit donc être exécuté à partir d'un système où un serveur Pandora FMS est installé.
L'outil pandora_db est crucial pour le bon fonctionnement de Pandora FMS, et c'est pourquoi son exécution est programmée dans les tâches cron du système avec une périodicité horaire. Son exécution est configurée dans le fichier:
/etc/cron.hourly/pandora_db
Cet outil exécute automatiquement toutes les tâches de maintenance de la base de données :
- Supprimer les anciennes données.
- Il compile les données existantes.
- Vérifie la cohérence de la base de données pour les modules inexistants ou non initialisés.
- Supprimer les coordonnées quotidiennes de l'agent.
- Déplace toutes les anciennes données vers la base de données historique auxiliaire.
L'exécution de pandora_db est configurée dans les tâches cron du système, pour cela le fichier /etc/cron.hourly/pandora_db
doit exister et contenir ce qui suit:
"/usr/bin/pandora_db" "/etc/pandora/pandora_server.conf">/dev/null 2>&1
- Il est également important de vérifier les autorisations et le propriétaire du fichier. Les permissions correctes sont
755
, si elles sont différentes, vous devez exécuter:
chmod 755 /etc/cron.hourly/pandora_db
- Quant au propriétaire, il doit être root user ou root pour l'utilisateur et le groupe, s'ils sont différents, vous devez exécuter:
chown root:root /etc/cron.hourly/pandora_db
Exécution manuelle de l'outil de maintenance
Si cela s'avère nécessaire, il est possible de lancer l'exécution de pandora_db. Exécutez à partir d'une console ou d'un shell ce qui suit:
/usr/bin/pandora_db /etc/pandora/pandora_server.conf
Sur les systèmes surchargés, cette opération peut prendre beaucoup de temps, il est donc recommandé de laisser le processus en arrière-plan.
Pour exécuter manuellement l'outil de maintenance et le laisser en arrière-plan, procédez comme suit:
nohup /usr/bin/pandora_db /etc/pandora/pandora_server.conf
Le processus prendra un certain temps pour se charger complètement en arrière-plan, puis vous pouvez fermer la fenêtre de la console ou shell et le processus continuera à s'exécuter.
Il est important de s'assurer que vous utilisez la version actuelle de l'outil : si vous exécutez le programme sans paramètres, la version de l'outil sera affichée dans l'en-tête du message, et elle doit correspondre à la version installée sur le serveur.
Sauvegarde de la base de données
Il est important de se rappeler que cette opération ne fait que sauvegarder et/ou restaurer la base de données, sans inclure d'autres fichiers, ni la configuration du serveur.
La commande mysqldump permet d'effectuer une sauvegarde (backup) de la base de données. Pour ce faire, vous devez effectuer un vidage complet de la base de données, c'est-à-dire de la structure des tables et de leur contenu. Cette commande dispose de plusieurs options pour effectuer des backups, et son utilisation de base est suffisante pour effectuer un dump à partir du même système que celui où la base de données est hébergée.
Par exemple, pour effectuer une backup de la base de données pandora
(utilisateur root
et mot de passe pandora
) et transférer le résultat dans un fichier:
mysqldump -u root -p pandora> /backup/pandoradb_backup.sql
À partir d'une backup effectuée de cette manière, vous pouvez restaurer une base de données complète. Connectez-vous à MySQL, créez la base de données à restaurer, puis chargez la backup dans cette base. En suivant l'exemple ci-dessus (remplacez mypassowrd
par votre mot de passe):
mysql -u root -p
CREATE DATABASE pandora; USE pandora; SOURCE /backup/pandoradb_backup.sql; GRANT ALL privileges ON pandora.* TO pandora@localhost IDENTIFIED BY 'mypassword'; exit;
Enfin, il est nécessaire de réinitialiser les permissions des utilisateurs configurées à la fois dans la console Pandora FMS et dans le serveur afin qu'ils aient un accès complet à la base de données (remplacez mypassword
par votre mot de passe):
GRANT ALL privileges ON pandora.* TO pandora@localhost IDENTIFIED BY 'mypassword';
Sauvegarde et récupération complètes du Pandora FMS
Il existe un script dans la distribution du serveur Pandora FMS qui est utilisé pour faire une sauvegarde et une restauration complète de tous les Pandora FMS. Ce script est conçu pour faire des copies et des restaurations dans les systèmes où le serveur et la console sont situés sur la même machine.
Il est conçu pour sauvegarder et restaurer les composants suivants:
- Fichier(s) de configuration du serveur.
- Fichiers en attente d'exécution, ainsi que les fichiers de configuration distants des agents.
- Base de données, complète.
- Web Console, terminé.
Si l'environnement comporte différents composants, vous devez utiliser l'outil dont les paramètres sont les plus appropriés à votre utilisation ou les modifier en fonction des circonstances.
Ce script doit être exécuté en tant que root. Vous êtes seul responsable de cette clé. Elle se trouve à l'adresse suivante:
/usr/share/pandora_server/util/pandora_backup.sh
En cas d'exécution sans paramètres, le menu d'aide s'affiche.
Watchdog pour les serveurs de Pandora FMS
Dans le dépôt de code, il y a un petit script qui surveille l'état du FMS de Pandora.
Ainsi, en cas de panne ou de défaillance du serveur, une opération de récupération automatique sera effectuée (tentative de démarrage de Pandora FMS). Si cette action échoue également, vous pouvez notifier l'événement. Cet outil se trouve dans:
/usr/share/pandora_server/util/pandora_watchdog.sh
Script pour la génération d'alertes
Le script pandora_watchdog.sh
recherche un fichier dans /usr/bin/pandora_alert
avec les instructions pour générer l'alerte. Dans ce fichier est défini le code qui sera exécuté lorsque le processus Watchdog n'a pas pu lever ou exécuter le serveur Pandora FMS. Dans cet exemple, en plus d'avertir par SMS, il arrête le serveur Tentacle:
#!/bin/bash sendsms +34458474843 "The Pandora FMS has suffered some issue and it cannot be started." /etc/init.d/tentacle_serverd stop
Vous devez accorder des droits d'exécution à ce script:
chmod 750 /usr/bin/pandora_alert
Démarrage de le Watchdog
Pour lancer le Watchdog et le laisser fonctionner en arrière-plan, exécutez la commande suivante:
nohup /usr/share/pandora_server/util/pandora_watchdog.sh &
Lorsque vous démarrez un Watchdog, gardez à l'esprit que si, pour des raisons de maintenance, vous souhaitez arrêter manuellement le serveur Pandora FMS, vous devrez préalablement arrêter le processus Watchdog afin d'éviter qu'il ne tente de démarrer automatiquement le service en continu.
Base de données historique
Une base de données historique est une base de données dans laquelle les anciennes données du module sont déplacées pour améliorer la réponse de la base de données principale du Pandora FMS, laissant ces données accessibles à la console de manière transparente lors de l'affichage des rapports, des graphiques du module, etc.
Mise en place d'une base de données historique
Pour mettre en place une base de données historique, vous n'aurez besoin que d'un nouveau serveur pour l'héberger (différent de la base de données principale). Une fois que vous avez installé MySQL sur ce serveur, suivez les étapes suivantes:
Dans le menu, choisissez Management → Setup → Setup → Historical database et appuyez sur le bouton Enable historical database pour accéder à la paramètres de connexion (Configure connection target):
Remplir les champs ci-dessus:
- Host: Nom de l'hôte (lien web ou adresse IP) de la base de données historique.
- Port: Port de connexion à la base de données historique. Valeur standard:
3306
. - Database name: Nom de la base de données historique. Valeur par défaut:
pandora
. - Database user: Utilisateur de la base de données historique. Valeur par défaut:
pandora
. - Database password: Mot de passe de la base de données historique. Il vous permettra de vous connecter à la base de données historique.
Dans les champs de ce formulaire appelés Data days old to keep in active database, Transference block size (Step) et Delay between transferences (seconds) définir la manière dont les données seront envoyées à la base de données historique, c'est-à-dire que les données comportant plus de n jours (Data days) Les données les plus anciennes seront déplacées vers la base de données historique par blocs de n rangs (Step) attente n secondes (Delay) entre un bloc et le suivant pour éviter les surcharges. Dans cet écran, vous pouvez également décider d'envoyer ou non les événements datant de plus de n jours dans la base de données de l'historique. (Events days old to keep in active database), Il convient toutefois de noter que l'inclusion d'événements augmentera considérablement le taux de croissance de la base de données historique et que les événements ne seront consultés que lors de la création de rapports, et non dans la vue des événements.
La base de données historique utilise le code binaire /usr/bin/pandora_db
pour transférer les données. En outre, vous devez configurer les options de la maintenance de la base de données historique.