Windows SNMP (Rust)
Expérimental : le plugin Rust centreon-plugin-rust-snmp est actuellement en phase beta.
Dépendances du connecteur de supervision
Les connecteurs de supervision suivants sont automatiquement installés lors de l'installation du connecteur Windows SNMP (Rust) depuis la page Configuration > Connecteurs > Connecteurs de supervision :
Contenu du pack
Modèles
Le connecteur de supervision Windows SNMP (Rust) apporte un modèle d'hôte :
- OS-Windows-SNMP-Rs-custom
Le connecteur apporte les modèles de service suivants (classés selon le modèle d'hôte auquel ils sont rattachés) :
- OS-Windows-SNMP-Rs-custom
- Non rattachés à un modèle d'hôte
| Alias | Modèle de service | Description |
|---|---|---|
| Cpu | OS-Windows-Cpu-SNMP-Rs-custom | Contrôle du taux d'utilisation du CPU de la machine |
| Disk-Global | OS-Windows-Disk-Global-SNMP-Rs-custom | Contrôle du taux d'espace libre disponible des disques |
| Memory | OS-Windows-Memory-SNMP-Rs-custom | Contrôle l'utilisation de la mémoire vive (RAM) |
| Swap | OS-Windows-Swap-SNMP-Rs-custom | Contrôle du taux d'utilisation de la mémoire virtuelle |
| Uptime | OS-Windows-Uptime-SNMP-Rs-custom | Durée depuis laquelle l'hôte fonctionne sans interruption |
Les services listés ci-dessus sont créés automatiquement lorsque le modèle d'hôte OS-Windows-SNMP-Rs-custom est utilisé.
| Alias | Modèle de service | Description |
|---|---|---|
| Process-Generic | OS-Windows-Process-Generic-SNMP-Rs-custom | Contrôle permettant de vérifier que les processus Windows sont démarrés et de surveiller leur utilisation de la mémoire vive et du CPU |
Les services listés ci-dessus ne sont pas créés automatiquement lorsqu'un modèle d'hôte est appliqué. Pour les utiliser, créez un service manuellement et appliquez le modèle de service souhaité.
Métriques & statuts collectés
Voici le tableau des services pour ce connecteur, détaillant les métriques et statuts rattachés à chaque service.
- Cpu
- Disk-Global
- Memory
- Process-Generic
- Swap
- Uptime
| Nom | Unité |
|---|---|
| avg.cpu.usage.percent | % |
| cpu#core.cpu.usage.percent | % |
| Nom | Unité |
|---|---|
| storage.description#storage.usage.bytes | B |
| storage.description#storage.usage.percent | % |
| Nom | Unité |
|---|---|
| storage.description#memory.usage.percent | % |
| storage.description#memory.usage.bytes | B |
| Nom | Unité |
|---|---|
| processes.name#process.memory.bytes | B |
| processes.name#process.cpu.percent | % |
| Nom | Unité |
|---|---|
| storage.description#memory.usage.percent | % |
| storage.description#memory.usage.bytes | B |
| Nom | Unité |
|---|---|
| system.uptime.seconds | s |
Prérequis
Configurez le service SNMP en V2 pour superviser le système Windows.
Les instructions ci-après peuvent changer en fonction de votre version de Windows. Référez-vous à la documentation officielle de Microsoft le cas échéant.
-
Installez la fonctionnalité SNMP dans le gestionnaire de serveur de Windows : Gestionnaire de serveur > Ajouter des rôles et des fonctionnalités > Installation basée sur un rôle ou une fonctionnalité > Service SNMP.
-
Paramétrez le service SNMP agent avec votre communauté et les adresses IP des collecteurs qui enverront les requêtes.
-
Redémarrez le service SNMP après avoir configuré celui-ci.
Flux réseau
La communication doit être possible sur le port UDP 161 depuis le collecteur Centreon vers le serveur Windows supervisé.
Installer le connecteur de supervision
Pack
La procédure d'installation des connecteurs de supervision diffère légèrement suivant que votre licence est offline ou online.
- Si la plateforme est configurée avec une licence online, l'installation d'un paquet n'est pas requise pour voir apparaître le connecteur dans le menu Configuration > Connecteurs > Connecteurs de supervision. Au contraire, si la plateforme utilise une licence offline, installez le paquet sur le serveur central via la commande correspondant au gestionnaire de paquets associé à sa distribution :
- Alma / RHEL / Oracle Linux 8
- Alma / RHEL / Oracle Linux 9
- Debian 11 & 12
dnf install centreon-pack-operatingsystems-windows-snmp-rs
dnf install centreon-pack-operatingsystems-windows-snmp-rs
apt install centreon-pack-operatingsystems-windows-snmp-rs
- Quel que soit le type de la licence (online ou offline), installez le connecteur Windows SNMP (Rust) depuis l'interface web et le menu Configuration > Connecteurs > Connecteurs de supervision.
Plugin
À partir de Centreon 22.04, il est possible de demander le déploiement automatique du plugin lors de l'utilisation d'un connecteur. Si cette fonctionnalité est activée, et que vous ne souhaitez pas découvrir des éléments pour la première fois, alors cette étape n'est pas requise.
Plus d'informations dans la section Installer le plugin.
Utilisez les commandes ci-dessous en fonction du gestionnaire de paquets de votre système d'exploitation :
- Alma / RHEL / Oracle Linux 8
- Alma / RHEL / Oracle Linux 9
- Debian 11 & 12
dnf install centreon-plugin-operatingsystems-windows-snmp-rs
dnf install centreon-plugin-operatingsystems-windows-snmp-rs
apt install centreon-plugin-operatingsystems-windows-snmp-rs
Utiliser le connecteur de supervision
Utiliser un modèle d'hôte issu du connecteur
- Ajoutez un hôte à Centreon depuis la page Configuration > Hôtes.
- Complétez les champs Nom, Alias & IP Address/DNS correspondant à votre ressource.
- Appliquez le modèle d'hôte OS-Windows-SNMP-Rs-custom. Une liste de macros apparaît. Les macros vous permettent de définir comment le connecteur se connectera à la ressource, ainsi que de personnaliser le comportement du connecteur.
- Renseignez les macros désirées. Attention, certaines macros sont obligatoires.
| Macro | Description | Valeur par défaut | Obligatoire |
|---|---|---|---|
| SNMP_EXTRA_OPTIONS | Any extra option you may want to add to every command (a --verbose flag for example). Toutes les options sont listées ici. |
- Déployez la configuration. L'hôte apparaît dans la liste des hôtes supervisés, et dans la page Statut des ressources. La commande envoyée par le connecteur est indiquée dans le panneau de détails de l'hôte : celle-ci montre les valeurs des macros.
Utiliser un modèle de service issu du connecteur
- Si vous avez utilisé un modèle d'hôte et coché la case Créer aussi les services liés aux modèles, les services associés au modèle ont été créés automatiquement, avec les modèles de services correspondants. Sinon, créez les services désirés manuellement et appliquez-leur un modèle de service.
- Renseignez les macros désirées (par exemple, ajustez les seuils d'alerte). Les macros indiquées ci-dessous comme requises (Obligatoire) doivent être renseignées.
- Cpu
- Disk-Global
- Memory
- Process-Generic
- Swap
- Uptime
| Macro | Description | Valeur par défaut | Obligatoire |
|---|---|---|---|
| WARNING_AVERAGE | Warning threshold for the overall average | 90 | |
| CRITICAL_AVERAGE | Critical threshold for the overall average | 95 | |
| WARNING_CORE | Warning threshold for each CPU. | ||
| CRITICAL_CORE | Critical threshold for each CPU. | ||
| EXTRA_OPTIONS | Any extra option you may want to add to the command (a --verbose flag for example). Toutes les options sont listées ici. |
| Macro | Description | Valeur par défaut | Obligatoire |
|---|---|---|---|
| INCLUDE_NAME | Include filter (can be used multiple times) | .* | |
| WARNING_BYTES | Warning threshold for the metric 'storage.usage.bytes' | ||
| CRITICAL_BYTES | Critical threshold for the metric 'storage.usage.bytes' | ||
| WARNING_PERCENT | Warning threshold for the metric 'storage.usage.percent' | 80 | |
| CRITICAL_PERCENT | Critical threshold for the metric 'storage.usage.percent' | 90 | |
| EXTRA_OPTIONS | Any extra option you may want to add to the command (a --verbose flag for example). Toutes les options sont listées ici. |
| Macro | Description | Valeur par défaut | Obligatoire |
|---|---|---|---|
| WARNING_BYTES | Warning threshold for the metric 'memory.usage.bytes' | ||
| CRITICAL_BYTES | Critical threshold for the metric 'memory.usage.bytes' | ||
| WARNING_PERCENT | Warning threshold for the metric 'memory.usage.percent' | 90 | |
| CRITICAL_PERCENT | Critical threshold for the metric 'memory.usage.percent' | 95 | |
| EXTRA_OPTIONS | Any extra option you may want to add to the command (a --verbose flag for example). Toutes les options sont listées ici. |
| Macro | Description | Valeur par défaut | Obligatoire |
|---|---|---|---|
| INCLUDE_NAME | Include filter (can be used multiple times) | .* | |
| EXCLUDE_NAME | Exclude filter (can be used multiple times) | ^$ | |
| NO_DATA_STATUS | Status when the filters keep no data: OK, WARNING, CRITICAL or UNKNOWN | CRITICAL | |
| WARNING_CPU | Warning threshold for the metric 'process.cpu.percent' | ||
| CRITICAL_CPU | Critical threshold for the metric 'process.cpu.percent' | ||
| WARNING_MEMORY | Warning threshold for the metric 'process.memory.bytes' | ||
| CRITICAL_MEMORY | Critical threshold for the metric 'process.memory.bytes' | ||
| EXTRA_OPTIONS | Any extra option you may want to add to the command (a --verbose flag for example). Toutes les options sont listées ici. |
| Macro | Description | Valeur par défaut | Obligatoire |
|---|---|---|---|
| WARNING_BYTES | Warning threshold for the metric 'memory.usage.bytes' | ||
| CRITICAL_BYTES | Critical threshold for the metric 'memory.usage.bytes' | ||
| WARNING_PERCENT | Warning threshold for the metric 'memory.usage.percent' | 80 | |
| CRITICAL_PERCENT | Critical threshold for the metric 'memory.usage.percent' | 90 | |
| EXTRA_OPTIONS | Any extra option you may want to add to the command (a --verbose flag for example). Toutes les options sont listées ici. |
| Macro | Description | Valeur par défaut | Obligatoire |
|---|---|---|---|
| WARNING_SECONDS | Warning threshold for the metric 'system.uptime.seconds' | 3600: | |
| CRITICAL_SECONDS | Critical threshold for the metric 'system.uptime.seconds' | ||
| EXTRA_OPTIONS | Any extra option you may want to add to the command (a --verbose flag for example). Toutes les options sont listées ici. |
- Déployez la configuration. Le service apparaît dans la liste des services supervisés, et dans la page Statut des ressources. La commande envoyée par le connecteur est indiquée dans le panneau de détails du service : celle-ci montre les valeurs des macros.
Comment puis-je tester le plugin et que signifient les options des commandes ?
Une fois le plugin installé, vous pouvez tester celui-ci directement en ligne
de commande depuis votre collecteur Centreon en vous connectant avec
l'utilisateur centreon-engine (su - centreon-engine). Vous pouvez tester
que le connecteur arrive bien à superviser une ressource en utilisant une commande
telle que celle-ci (remplacez les valeurs d'exemple par les vôtres) :
/usr/lib/centreon/plugins/centreon-plugin-rust-snmp -H '10.0.0.1' -c 'my-snmp-community' -v '2c' \
--json '/usr/lib/centreon/plugins/rs-collections/operatingsystems-windows-snmp/uptime.json' \
--warning-seconds='' \
--critical-seconds=''
La commande devrait retourner un message de sortie similaire à :
OK: Uptime: 64750s | 'system.uptime.seconds'=64750s;;;0;
Diagnostic des erreurs communes
Rendez-vous sur la documentation dédiée pour le diagnostic des erreurs communes des plugins Centreon.
Modes disponibles
Dans la plupart des cas, un mode correspond à un modèle de service. Le mode est renseigné dans la commande d'exécution du connecteur. Dans l'interface de Centreon, il n'est pas nécessaire de les spécifier explicitement, leur utilisation est implicite dès lors que vous utilisez un modèle de service. En revanche, vous devrez spécifier le mode correspondant à ce modèle si vous voulez tester la commande d'exécution du connecteur dans votre terminal.
Tous les modes disponibles peuvent être affichés en ajoutant le paramètre
--list-mode à la commande :
/usr/lib/centreon/plugins/centreon-plugin-rust-snmp -H '10.0.0.1' -c 'my-snmp-community' -v '2c' \
--json '/usr/lib/centreon/plugins/rs-collections/operatingsystems-windows-snmp/uptime.json' \
--list-mode
Le plugin apporte les modes suivants :
| Mode | Modèle de service associé |
|---|---|
| cpu [code] | OS-Windows-Cpu-SNMP-Rs-custom |
| memory [code] | OS-Windows-Memory-SNMP-Rs-custom OS-Windows-Swap-SNMP-Rs-custom |
| processcount [code] | OS-Windows-Process-Generic-SNMP-Rs-custom |
| storage [code] | OS-Windows-Disk-Global-SNMP-Rs-custom |
| sysdesc [code] | Non utilisé dans ce connecteur de supervision |
| uptime [code] | OS-Windows-Uptime-SNMP-Rs-custom |
Options disponibles
Options génériques
Les options génériques sont listées ci-dessous :
| Option | Description |
|---|---|
| --hostname | Hostname or IP address (default: localhost) |
| --port | SNMP port (default: 161) |
| --snmp-version | SNMP version (default: 2c) |
| --json | JSON command definition file |
| --filter-in | Include filter (can be used multiple times) |
| --filter-out | Exclude filter (can be used multiple times) |
| --no-data-status | Status when the filters keep no data: OK, WARNING, CRITICAL or UNKNOWN (default: UNKNOWN) |
| --check-format | Check JSON file validity and exit |
| --check-response | Display raw SNMP response |
| --list-counters | List all available metrics |
| --help | Print this help message |
Options des modes
Les options disponibles pour chaque modèle de services sont listées ci-dessous :
- Cpu
- Disk-Global
- Memory
- Process-Generic
- Swap
- Uptime
| Option | Description |
|---|---|
| --warning-core | Warning threshold for the metric 'core.cpu.usage.percent'. |
| --critical-core | Critical threshold for the metric 'core.cpu.usage.percent'. |
| --warning-avg | Warning threshold for the metric 'avg.cpu.usage.percent'. |
| --critical-avg | Critical threshold for the metric 'avg.cpu.usage.percent'. |
| Option | Description |
|---|---|
| --warning-bytes | Warning threshold for the metric 'storage.usage.bytes'. |
| --critical-bytes | Critical threshold for the metric 'storage.usage.bytes'. |
| --warning-prct | Warning threshold for the metric 'storage.usage.percent'. |
| --critical-prct | Critical threshold for the metric 'storage.usage.percent'. |
| Option | Description |
|---|---|
| --warning-prct | Warning threshold for the metric 'memory.usage.percent'. |
| --critical-prct | Critical threshold for the metric 'memory.usage.percent'. |
| --warning-bytes | Warning threshold for the metric 'memory.usage.bytes'. |
| --critical-bytes | Critical threshold for the metric 'memory.usage.bytes'. |
| Option | Description |
|---|---|
| --warning-process-memory | Warning threshold for the metric 'process.memory.bytes'. |
| --critical-process-memory | Critical threshold for the metric 'process.memory.bytes'. |
| --warning-process-cpu | Warning threshold for the metric 'process.cpu.percent'. |
| --critical-process-cpu | Critical threshold for the metric 'process.cpu.percent'. |
| Option | Description |
|---|---|
| --warning-prct | Warning threshold for the metric 'memory.usage.percent'. |
| --critical-prct | Critical threshold for the metric 'memory.usage.percent'. |
| --warning-bytes | Warning threshold for the metric 'memory.usage.bytes'. |
| --critical-bytes | Critical threshold for the metric 'memory.usage.bytes'. |
| Option | Description |
|---|---|
| --warning-seconds | Warning threshold for the metric 'system.uptime.seconds'. |
| --critical-seconds | Critical threshold for the metric 'system.uptime.seconds'. |
Pour un mode, la liste de toutes les options disponibles et leur signification peut être
affichée en ajoutant le paramètre --help à la commande :
/usr/lib/centreon/plugins/centreon-plugin-rust-snmp -H '10.0.0.1' -c 'my-snmp-community' -v '2c' \
--json '/usr/lib/centreon/plugins/rs-collections/operatingsystems-windows-snmp/uptime.json' \
--warning-seconds='' \
--help