Dans le guide précédent, nous avons montré comment installer le serveur de surveillance Cacti sur CentOS 8. Ce didacticiel va plus loin et vous montre comment ajouter et surveiller des hôtes Linux distants sur Cacti. Nous allons ajouter des systèmes distants Ubuntu 20.04 LTS et CentOS 8 au serveur cacti pour la surveillance.
Commençons.
Étape 1) Installer le service SNMP sur les hôtes Linux
SNMP, abréviation de Simple Network Management Protocol, est un protocole utilisé pour collecter des informations sur les périphériques d'un réseau. À l'aide de SNMP, vous pouvez interroger des métriques telles que l'utilisation du processeur, l'utilisation de la mémoire, l'utilisation du disque, la bande passante du réseau, etc. Ces informations seront ultérieurement représentées graphiquement dans Cacti pour fournir un aperçu intuitif des performances des hôtes distants.
Dans cet esprit, nous allons installer et activer le service SNMP sur les deux hôtes Linux :
Sur Ubuntu 20.04
Pour installer l'agent SNMP, exécutez la commande :
$ sudo apt install snmp snmpd -y
Sur CentOS 8
$ sudo dnf install net-snmp net-snmp-utils -y
SNMP démarre automatiquement lors de l'installation. Pour le confirmer, confirmez le statut en exécutant :
$ sudo systemctl status snmpd
Si le service n'est pas encore en cours d'exécution, démarrez-le et activez-le au démarrage comme indiqué :
$ sudo systemctl start snmpd
Nous pouvons clairement voir que le service est opérationnel. Par défaut, SNMP exécute des écoutes sur le port UDP 161, vous pouvez le vérifier à l'aide de la commande netstat comme indiqué.
$ sudo netstat -pnltu | grep snmpd
Étape 2) Configuration du service SNMP
Jusqu'à présent, nous avons réussi à installer le service SNMP et confirmé qu'il fonctionne comme prévu. La prochaine étape consiste à configurer le service SNMP afin que les données puissent être collectées et envoyées au service Cacti.
Le fichier de configuration se trouve dans /etc/snmp/snmpd.conf
Pour Ubuntu 20.04
Nous devons configurer quelques paramètres. Tout d'abord, localisez les directives sysLocation et sysContact. Ceux-ci définissent l'emplacement physique de votre client Linux.
Par conséquent, n'hésitez pas à fournir l'emplacement de votre client.
Ensuite, localisez l'adresse de l'agent directif. Il s'agit de l'adresse IP et du numéro de port que l'agent écoutera.
Ajustez la directive comme indiqué ci-dessous où 192.168.2.106 est l'adresse de mon système client.
agentaddress udp:192.168.2.106:161
La directive permettra désormais à l'adresse IP locale du système d'écouter toutes les requêtes SNMP. Ensuite, ajoutez la directive de vue ci-dessous au-dessus des autres directives de vue :
view all included .1 80
Ensuite, modifiez l'attribut rocommunity indiqué ci-dessous
rocommunity public default -V systemonly to: rocommunity public default -V all
Enfin, pour vous assurer que le service SNMP fonctionne comme prévu, exécutez la commande ci-dessous sur l'hôte Linux.
$ sudo snmpwalk -v 1 -c public -O e 192.168.2.106
Vous devriez obtenir une sortie massive comme indiqué.
Pour CentOS 8
Dans CentOS 8, la configuration est légèrement différente. Commencez par localiser la ligne commençant par la directive com2sec, comme indiqué :
Nous allons spécifier un nouveau nom de sécurité appelé AllUser et supprimer le notConfigUser comme indiqué :
Ensuite, localisez la ligne qui commence par la directive group comme indiqué.
Nous allons modifier le deuxième attribut et spécifier AllGroup comme nom de groupe et AllUser comme nom de sécurité comme défini précédemment.
Dans la section vue, ajoutez cette ligne
view AllView included .1
Enfin, localisez la ligne commençant par la directive d'accès.
Modifiez-le comme indiqué :
Enregistrez les modifications et quittez le fichier de configuration. Redémarrez le démon snmpd pour que les modifications prennent effet
$ sudo systemctl restart snmpd
Activez également le démarrage du service au démarrage.
$ sudo systemctl enable snmpd
Encore une fois, vérifiez si la configuration snmp fonctionne comme prévu à l'aide de la commande snmpwalk :
$ sudo snmpwalk -v 2c -c public -O e 127.0.0.1
Parfait! tout semble fonctionner comme prévu.
Étape 3) Configurez les règles de pare-feu pour SNMP
Ensuite, nous devons ouvrir le port udp 161 pour autoriser le trafic SNMP sur le serveur Cacti et les hôtes Linux.
Pour l'hôte Ubuntu 20.04
Exécutez les commandes unders pour autoriser le port udp 161 dans le pare-feu,
$ sudo ufw allow 161/udp $ sudo ufw reload
Pour l'hôte CentOS 8
Pour le client CentOS 8 et le serveur Cacti qui s'exécute également sur CentOS 8, appelez les commandes suivantes :
$ sudo firewall-cmd --add-port=161/udp --zone=public --permanent $ sudo firewall-cmd --reload
Rendez-vous sur le serveur Cacti et exécutez les commandes affichées pour confirmer que SNMP envoie les métriques des clients distants.
$ sudo snmpwalk -v 1 -c public -O e 192.168.2.106 # Ubuntu $ sudo snmpwalk -v 2c -c public -O e 192.168.2.104 # CentOS
Génial! Cela confirme que le serveur Cacti reçoit les métriques système des systèmes Linux distants.
Étape 4) Ajouter un hôte Linux distant à Cacti
C'est la dernière section où vous devez ajouter vos hôtes Linux distants. Alors, connectez-vous au serveur Cacti et cliquez sur "Créer des appareils" comme indiqué.
Dans mon cas, mon hôte distant Ubuntu a déjà été détecté par Cacti et répertorié comme indiqué.
Cliquez sur votre appareil et veillez à remarquer les informations SNMP tout en haut, comme indiqué.
Ensuite, faites défiler vers le bas et cliquez sur le bouton "Enregistrer".
Si votre appareil n'est pas répertorié, cliquez simplement sur "Créer"> "Appareils" et remplissez les détails de votre appareil comme dans l'hôte CentOS8 comme indiqué.
Une fois l'appareil ajouté, cliquez sur l'onglet "Graphiques".
Sur la page suivante, sélectionnez le nom de votre appareil
Faites défiler jusqu'en bas et cliquez sur le bouton "Créer".
Attendez environ 10 à 20 minutes pour que les graphiques commencent à être remplis. Enfin, vous commencerez à remarquer que les statistiques de l'hôte distant sont représentées graphiquement comme indiqué.
Et ceci apporte une conclusion à cet article. Nous sommes ravis que vous ayez pu suivre le chemin. Faites-nous savoir comment cela s'est passé et nous serons heureux de vous aider en cas de problème.