PHP implémente l'outil open source de surveillance du réseau Nagios

王林
Libérer: 2023-06-18 16:14:01
original
1059 Les gens l'ont consulté

Nagios est un outil de surveillance de réseau open source utilisé pour surveiller l'état de fonctionnement des réseaux, des serveurs et des applications. Il peut détecter et signaler les anomalies, les pannes et les problèmes de performances du réseau pour aider les administrateurs système à prendre des mesures en temps opportun pour éviter les pannes du système.

Dans cet article, nous présenterons comment utiliser le langage PHP pour implémenter l'outil open source de surveillance de réseau Nagios, et discuterons de la manière de l'appliquer dans un environnement pratique.

1. Installez PHP et Nagios

Avant de commencer, vous devez installer PHP et Nagios. PHP est un langage de programmation Web populaire qui peut être utilisé avec Nagios pour écrire des plug-ins, des vues et d'autres interfaces Web. Vous pouvez télécharger le programme d'installation depuis le site officiel de PHP (https://www.php.net/) et l'installer selon les instructions. Nagios est également un outil de surveillance de réseau populaire. Vous pouvez télécharger le programme d'installation sur le site officiel de Nagios (https://www.nagios.org/) et l'installer selon les instructions.

2. Écriture de plug-ins Nagios

Les plug-ins Nagios sont des programmes utilisés pour détecter les périphériques et applications réseau. Vous pouvez écrire des plugins en PHP et les enregistrer dans le répertoire des plugins Nagios. Voici un exemple simple de plugin PHP pour détecter les serveurs HTTP :

#!/usr/bin/php
<?php
$host = $argv[1];
$port = $argv[2];

$timeout = 5;

$fp = fsockopen($host, $port, $errno, $errstr, $timeout);
if (!$fp) {
    echo "CRITICAL - Cannot connect to $host:$port
";
    exit(2);
}

$request = "GET / HTTP/1.0

";
fwrite($fp, $request);
$response = fgets($fp, 4096);

fclose($fp);

if (strpos($response, "200 OK") === false) {
    echo "CRITICAL - HTTP server did not respond with 200 OK status
";
    exit(2);
}

echo "OK - HTTP server is responding
";
exit(0);
?>
Copier après la connexion

Le plugin ci-dessus détecte l'état du serveur HTTP, essaie d'abord de se connecter à l'hôte et au numéro de port, si la connexion échoue, le plugin renvoie l'état "CRITIQUE" . Si la connexion réussit, une requête HTTP est envoyée au serveur. Si le code d'état de réponse du serveur est « 200 OK », le plug-in renvoie l'état « OK ». Sinon, le plugin renvoie le statut "CRITICAL".

3. Configurer Nagios

Après avoir installé et configuré PHP et Nagios, vous devez configurer le plug-in dans la surveillance Nagios. Vous pouvez ajouter le plugin PHP en ajoutant la ligne suivante à votre fichier de configuration Nagios :

define command{
    command_name    check_http_php
    command_line    /usr/local/bin/php /usr/local/nagios/libexec/check_http_php.php $ARG1$ $ARG2$
}
Copier après la connexion

Ce qui précède définit une commande nommée "check_http_php", qui utilise le plugin "check_http_php.php" et les deux paramètres "$ARG1$" et " $ARG2" $".

Pour utiliser cette commande avec la surveillance Nagios, vous devez associer un service à cette commande. Vous pouvez ajouter la ligne suivante en utilisant le fichier de configuration Nagios suivant :

define service{
    use                generic-service
    host_name          localhost
    service_description HTTP
    check_command      check_http_php!localhost!80
}
Copier après la connexion

Ce qui précède définit un service nommé "HTTP", qui surveille le port HTTP sur l'hôte local et le détecte à l'aide de la commande "check_http_php".

4. Test

Après avoir terminé la configuration ci-dessus, nous pouvons tester si l'outil de surveillance du réseau Nagios implémenté en PHP peut fonctionner normalement. Vous pouvez vérifier l'état du serveur HTTP en exécutant la commande suivante sur la ligne de commande :

/usr/local/nagios/libexec/check_nrpe -H 127.0.0.1 -c check_http_php!localhost!80
Copier après la connexion

Si tout est OK, un message décrivant l'état HTTP doit être renvoyé.

5. Résumé

Maintenant, vous avez appris à utiliser le langage PHP pour implémenter l'outil open source de surveillance du réseau Nagios. En écrivant des plug-ins et des fichiers de configuration, vous pouvez surveiller l'état des périphériques et des applications réseau et prendre des mesures rapides pour résoudre tout problème. Dans les applications réelles, vous pouvez le personnaliser et l'étendre en fonction de vos propres besoins et scénarios.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal