Contexte
Cette page a pour but de vous décrire la mise en place du pack hpe-nimble-by-SNMP__shinken :
- Le déploiement du pack sur votre plateforme,
- La configuration de vos connexions SNMP,
Procédure de mise en place du pack
En préambule, il faut :
- Récupérer la dernière version du pack auprès de l'équipe Shinken ou de votre partenaire,
- Transférer le pack sur votre Synchronizer et votre/vos Pollers.
En utilisant l'installeur "install.sh" ( sur Poller / Synchronizer )
Commun à tout Poller / Synchronizer
Que ce soit sur un Synchronizer où sur un Pollers :
Désarchiver le pack :
tar --no-same-owner -xf NOM_DU_PACK.tar.xz
Entrée dans le répertoire extrait de l'archive et lancer le "install.sh"
cd NOM_DU_PACK/ ./install.sh
L'installeur dépose les éléments suivants :
- Le fichier de configuration de la source "shinken-additional-packs-import" qui servira à importer la définition du pack dans le Synchronizer.
- Les fichiers de définitions des éléments du pack, à importer dans le Synchronizer.
Les sondes du pack.
Exemple de mise en place :======================================================== PRE-INSTALLATION CHECKS ======================================================== No previous installation detected. Proceeding with installation... ======================================================== INSTALL PACK [ hpe-nimble-by-SNMP__shinken V02.02.00-RC000.03 ] ======================================================== ----------------------------- | COLLECTOR [ shinken-additional-packs-import ] => Collector cfg file already AVAILABLE - Path : /etc/shinken/sources/shinken-additional-packs-import.cfg => Collector DATA space already AVAILABLE - Path : /etc/shinken-user/source-data/source-data-shinken-additional-packs-import => Definition File already AVAILABLE [ definition_shinken-additional-packs-import.cfg ] - Path : /etc/shinken-user/source-data/source-data-shinken-additional-packs-import/definition_shinken-additional-packs-import.cfg => Applying permissions - Path : /etc/shinken-user/source-data/source-data-shinken-additional-packs-import - Setting owner ( to "shinken" user ) - Setting rights ----------------------------- | MONITORING DEFINITION: => Installing definitions file in source-data folder ( Collector => shinken-additional-packs-import ) - Path : /etc/shinken-user/source-data/source-data-shinken-additional-packs-import - Setting owner ( to "shinken" user ) - Setting rights => Installing global data definitions file in SHINKEN directory ( => resource.d ) - Path : /etc/shinken/resource.d/shinken-additional-packs-import - Setting owner ( to "shinken" user ) - Setting rights ----------------------------- | PROBES: => Installing probes - Path : /var/lib/shinken-user/libexec/shinken-additional-packs/hpe-nimble-by-SNMP__shinken - Setting owner ( to "shinken" user ) - Setting rights ========================================================
========================================================
PRE-INSTALLATION CHECKS
========================================================
ERROR: Previous installation detected!
The following files/folders from a previous installation were found:
- /var/lib/shinken-user/libexec/shinken-additional-packs/hpe-nimble-by-SNMP__shinken
- /etc/shinken-user/source-data/source-data-shinken-additional-packs-import/packs/hpe-nimble-by-SNMP__shinken
- /etc/shinken-user/source-data/source-data-shinken-additional-packs-import/global-data/hpe-nimble-by-SNMP__shinken
- /etc/shinken/resource.d/shinken-additional-packs-import/global-data/hpe-nimble-by-SNMP__shinken
Please run './uninstall.sh' before installing the pack.
Installation ABORTED.
WARNING: Uninstallation will remove all installed config files ( .cfg ).
This step is required for installing this new pack version.
All manual changes to the present config files will be lost. This doesn't affect shinken Staging or Production environment.
Sur le Synchronizer
SEULEMENT si le collecteur "shinken-additional-packs-import" n'est pas déja PRÉSENT dans votre Synchronizer ( par exemple : première fois que vous utilisez un installeur de pack Shinken ) :
Vérifier dans la configuration de votre Synchronizer ( /etc/shinken/synchronizers/synchronizer-master.cfg ) que le collecteur "shinken-additional-packs-import" soit présent dans le champ sources.cat /etc/shinken/synchronizers/synchronizer-master.cfg
define synchronizer { [...] sources Source 1, Source 2, Source 3, shinken-additional-packs-import [...] }Si le collecteur "shinken-additional-packs-import" n'est pas présent, l'ajouter dans la liste puis redémarrez le Synchronizer pour que le collecteur soit pris en compte :
service-shinken-synchronizer restart
Activer le collecteur "shinken-additional-packs-import" si ce n'est pas déja fait.
Lancer l'import du collecteur "shinken-additional-packs-import":
- En suivant, vous devrez peut-être accepter ou des nouveautés ou des différences qui seraient liés à ce pack ( en fonction de l'évolution du pack ).
- En suivant, vous devrez peut-être accepter ou des nouveautés ou des différences qui seraient liés à ce pack ( en fonction de l'évolution du pack ).
IMPORTANT : si c'est première fois que vous installez le pack, il est nécessaire de faire un dernier redémarrage du Synchronizer.
service-shinken-synchronizer restart
Ou manuellement ( si l'utilisation du script install.sh n’est pas souhaitée ) :
Commun à tout Poller / Synchronizer
Si le pack est déjà installé
Il est recommandé de supprimer les anciens dossiers contenant le pack afin de garantir l'utilisation de la dernière version des fichiers livrés.
Pour effectuer cette suppression ( si la procédure d'installation manuelle a été suivie telle quelle ), la commande suivante peut être utilisée :
rm -rf /var/lib/shinken-user/libexec/shinken-additional-packs/hpe-nimble-by-SNMP__shinken rm -rf /etc/shinken-user/source-data/source-data-shinken-additional-packs-import/packs/hpe-nimble-by-SNMP__shinken rm -rf /etc/shinken-user/source-data/source-data-shinken-additional-packs-import/global-data/hpe-nimble-by-SNMP__shinken rm -rf /etc/shinken/resource.d/shinken-additional-packs-import/global-data/hpe-nimble-by-SNMP__shinken
Extraire le pack
Transférer le fichier du pack sur la machine et décompresser le fichier contenant le pack à l'aide de la ligne de commande ci-dessous (remplacer "PACK__shinken__NOM-DU-PACK__VERSION__OS.tar.gz" par le nom exact du pack livré) :
- Pour Linux ( le paramètre --no-same-owner permet de ne pas conserver les attributs d'utilisateurs/roles présent de la création du pack ) :
tar -xjfv --no-same-owner PACK__NOM-DU-PACK__shinken__VERSION__linux.tar.xz -C ./
- Pour Windows ( Rôle de Poller ) :
tar -xvzf PACK__NOM-DU-PACK__shinken__VERSION__windows.tar.gz -C ./
Entrez dans le répertoire créér :
cd NOM_DU_PACK/
Les sondes ( mises en place )
On place les sondes :
probe_path="/var/lib/shinken-user/libexec/shinken-additional-packs/hpe-nimble-by-SNMP__shinken" mkdir --parents $probe_path cp -r ./probes/* $probe_path chown -R shinken:shinken $probe_path chmod -R 750 $probe_path
Sur le Synchronizer
Ensuite, plaçons maintenant la définition des éléments de supervision du pack au bon endroit :
- Les fichiers de configuration :
- Nous vous conseillons de créer un Collecteur de type ( cfg-file-import ) qui permet d'importer des définitions d'éléments Shinken depuis les fichiers de définitions présents dans ce pack.
- Vous trouverez la procédure de mise en place dans la page de documentation suivante ( Collecteur de type ( cfg-file-import ) - Import depuis des fichiers au format .cfg )
- Pour la suite des explications, nous considérerons que ce collecteur s'appelle "shinken-additional-packs-import"
Une fois le collecteur mis en place, nous allons déployer le pack au bon endroit :
En premier, les fichiers de définition des éléments ( modèles d'hôtes, checks, commandes, ... ) du pack :
shinken_collector_data_path="/etc/shinken-user/source-data/source-data-shinken-additional-packs-import" cp -r ./monitoring-definitions/packs/* $shinken_collector_data_path chown -R shinken:shinken $shinken_collector_data_path chmod -R 744 $shinken_collector_data_path
Ensuite, les données globales
shinken_pack_globaldata_path="/etc/shinken/resource.d/shinken-additional-packs-import" mkdir --parents $shinken_pack_globaldata_path cp -r "./monitoring-definitions/global-data" "$shinken_pack_globaldata_path" chown -R shinken:shinken "$shinken_pack_globaldata_path" chmod -R 744 "$shinken_pack_globaldata_path"
- Nous vous conseillons de créer un Collecteur de type ( cfg-file-import ) qui permet d'importer des définitions d'éléments Shinken depuis les fichiers de définitions présents dans ce pack.
Redémarrer shinken
service-shinken-synchronizer restart
Activer le collecteur "shinken-additional-packs-import" :
Lancer l'import du collecteur "shinken-additional-packs-import" :
En suivant, vous devrez peut-être accepter les nouveautés / différences qui seraient liés à ce pack ( en fonction de l'évolution du pack ).
IMPORTANT : si c'est première fois que vous installez le pack, il est nécessaire de faire un dernier redémarrage du Synchronizer.
service-shinken-synchronizer restart
Vous pouvez également supprimer le dossier qui a été créé suite à la décompression du pack en utilisant la commande suivante :
rm -rf ./hpe-nimble-by-SNMP__shinken
Attention à ne pas supprimer le tar.gz, connaître la version exacte du pack qui vous a été livré vous sera utile en cas de problème avec votre pack.
Si une version précédente du pack a déjà été installée, il est recommandé de supprimer les anciens dossiers pour éviter de conserver des fichiers obsolètes, notamment en cas de modification de la structure du pack.
Utiliser les commandes suivantes pour effectuer cette suppression :
rm -rf /var/lib/shinken-user/libexec/shinken-additional-packs/hpe-nimble-by-SNMP__shinken rm -rf /etc/shinken-user/source-data/source-data-shinken-additional-packs-import/packs/hpe-nimble-by-SNMP__shinken rm -rf /etc/shinken-user/source-data/source-data-shinken-additional-packs-import/global-data/hpe-nimble-by-SNMP__shinken rm -rf /etc/shinken/resource.d/shinken-additional-packs-import/global-data/hpe-nimble-by-SNMP__shinken
Comment configurer la connexion SNMP ?
Pour l'exécution correcte des commandes du pack hpe-nimble-by-SNMP__shinken, vous aurez besoin de configurer SNMP sur les baies de stockage à superviser.
Quelques informations au préalable sont nécessaires pour la bonne compréhension de cette partie.
- D'une part, du côté de l'architecture Shinken, l'exécution des checks ( plus exactement les sondes) est réalisée par les Pollers, en tant qu'utilisateur "shinken".
- C'est depuis les pollers que les appels SNMP sont effectués en direction des baies de stockage.
- D'autre part, du côté des baies de stockage à superviser,
- Le moteur SNMP répond aux appels de Shinken.
- Pour y répondre, Shinken doit fournir les informations de connexion attendues par la baie de stockage, en fonction des configurations effectuées sur celle-ci.
Côté client ( Baie de stockage HPE Nimble )
La configuration SNMP s'effectue directement sur l'interface d'administration de la baie de stockage. En fonction de la version de SNMP utilisée, les informations à renseigner vont différer ( En fonction du modèle Shinken utilisé, des données permettent d'indiquer l'ensemble des informations pour que la sonde puisse contacter la baie de stockage ) :
- SNMP V1 et V2 ( Connexion avec mot de passe unique ) :
- Communauté SNMP
- SNMP V3 ( Connexion avec mot de passe et protocoles de chiffrement ) :
- NoAuthNoPriv ( pas d'authentification )
- Utilisateur SNMP
Cette version SNMP ne dispose d'aucun mécanisme de sécurité, il est recommandé de ne pas l'utiliser
- AuthNoPriv ( authentification sans chiffrement )
- Utilisateur SNMP
- Protocole d'authentification
- Mot de passe d'authentification
- AuthPriv ( authentification avec chiffrement )
- Utilisateur SNMP
- Protocole d'authentification
- Mot de passe d'authentification
- Protocole de chiffrement
- Mot de passe de chiffrement
- NoAuthNoPriv ( pas d'authentification )
La version SNMPv3 AuthPriv est de loin la version la plus sécurisée proposée par SNMP. Elle permet de chiffrer les échanges entre le Shinken et la baie de stockage, pour empêcher la donnée d'être interceptée. Il est fortement recommandé d'utiliser cette version.
Côté serveur Poller
Une configuration est nécessaire seulement si vous avez plusieurs Pollers dans un même royaume.
- En effet, les checks ont la nécessité de stocker des fichiers temporaires d'une exécution sur l'autre.
- mais comme le même check peut être exécuté sur le Poller 1 et en suivant sur le Poller 2, il est nécessaire que les 2 Pollers puissent accéder chacun au même fichier temporaire.
Créer un espace partagé où seront stockés les fichiers temporaires générés lors de l'exécution des sondes permet d'éviter toute perte de donnée.
- Une fois un dossier partagé créé, par exemple /shared-folder, modifiez la variable HPE-NIMBLE-BY-SNMP__WORKING-FOLDER-BASE-PATH avec le chemin du dossier partagé.
Tester la configuration SNMP v1 ou v2
Remplacer dans la commande ci-dessous : Une liste de valeurs doit défiler à l'écran pour valider la bonne connexion ( l'exemple ci-dessous était dans le cadre d'une connexion SNMPv2 ).[root@shinken-poller ~]# snmpwalk -v VERSION -c COMMUNAUTÉ IP-BAIE-HPE-NIMBLE
Exemple de résultat
$ snmpwalk -v2c -c public 1.2.3.4
SNMPv2-MIB::sysDescr.0 = STRING: Nimble Storage MONTLUCON running software version 6.1.2.400-1048557-opt
SNMPv2-MIB::sysObjectID.0 = OID: SNMPv2-SMI::enterprises.37447.3.1
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (155323183) 17 days, 23:27:11.83
SNMPv2-MIB::sysContact.0 = STRING: @@no.where
SNMPv2-MIB::sysName.0 = STRING: MONTLUCON
SNMPv2-MIB::sysLocation.0 = STRING: Unknown
SNMPv2-MIB::sysServices.0 = INTEGER: 76
IF-MIB::ifNumber.0 = INTEGER: 6
IF-MIB::ifIndex.1 = INTEGER: 1
...
Tester la configuration SNMPv3
Dans le cas de SNMPv3, la liste des arguments de la commande est plus exhaustive, mais tous ne sont pas forcément nécessaires suivant le mode de connexion configuré.
Remplacer ou enlever :
- IP-BAIE-HPE-NIMBLE par l'adresse IP de la baie de stockage
- USER-NAME par le nom d'utilisateur
- CONTEXT par le contexte SNMP ( optionnel ),
- LEVEL par le niveau de sécurité configuré pour la connexion SNMPv3 ( noAuthNoPriv | authNoPriv | authPriv ),
- AUTH_PROTOCOL par le protocole d'authentification utilisé ( à utiliser dans le cas du niveau authNoPriv et authPriv ) ,
- AUTH_PASSPHRASE par le mot de passe lié au protocole d'authentification ( à utiliser dans le cas du niveau authNoPriv et authPriv ),
- PRIV_PROTOCOL par le protocole de confidentialité utilisé pour la connexion SNMPv3 ( à utiliser dans le cas du niveau authPriv ),
- PRIV_PASSPHRASE par le mot de passe lié au protocole de confidentialité ( à utiliser dans le cas du niveau authPriv ),
- SECU_ENGINE-ID par l'lD de sécurité ( optionnel ),
- CONTEXT_ENGINE-ID par l'ID du contexte ( optionnel ),
[root@shinken-poller ~]# snmpwalk -v3 IP-BAIE-HPE-NIMBLE-u USER-NAME -n CONTEXT -l LEVEL -a AUTH_PROTOCOL -A AUTH_PASSPHRASE -x PRIV_PROTOCOL -X PRIV_PASSPHRASE -e SECU_ENGINE-ID -E CONTEXT_ENGINE-ID
Exemple de résultat
Une liste de valeurs doit défiler à l'écran pour valider la bonne connexion ( l'exemple ci-dessous était dans le cadre d'une connexion SNMPv3 ).
SNMPv2-MIB::sysDescr.0 = STRING: Nimble Storage MONTLUCON running software version 6.1.2.400-1048557-opt SNMPv2-MIB::sysObjectID.0 = OID: SNMPv2-SMI::enterprises.37447.3.1 DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (155323183) 17 days, 23:27:11.83 SNMPv2-MIB::sysContact.0 = STRING: @@no.where SNMPv2-MIB::sysName.0 = STRING: MONTLUCON SNMPv2-MIB::sysLocation.0 = STRING: Unknown SNMPv2-MIB::sysServices.0 = INTEGER: 76 IF-MIB::ifNumber.0 = INTEGER: 6 IF-MIB::ifIndex.1 = INTEGER: 1 ...
Côté interface de configuration
Modèle d'hôtes hpe-nimble-by-SNMPv1v2
| Nom | Modifiable sur | Unité | Défaut | Valeur par défaut à l'installation du pack | Description |
|---|---|---|---|---|---|
_HPE-NIMBLE-BY-SNMP__COMMUNITY | l'Hôte ( Onglet Données ) | -- | public | public | La Communauté SNMP v1/v2 défini sur votre baie de stockage:
|
Modèle d'hôtes hpe-nimble-by-SNMPv3_( noAuthNoPriv / authNoPriv / authPriv )
l'Hôte ( Onglet Données ) shinken Pas de données communes supplémentaires pour ce type de connexion SNMPv3 l'Hôte ( Onglet Données ) l'Hôte ( Onglet Données ) l'Hôte ( Onglet Données ) l'Hôte ( Onglet Données ) l'Hôte ( Onglet Données ) l'Hôte ( Onglet Données )Commun à tout les modes de connexion
Nom Modifiable sur Unité Défaut Valeur par défaut à l'installation de Shinken Description HPE-NIMBLE-BY-SNMP__LOGIN
-- shinken Utilisateur pour la connexion SNMPv3 Mode de connexion noAuthNoPriv
Mode de connexion authNoPriv
Nom Modifiable sur Unité Défaut Valeur par défaut à l'installation de Shinken Description HPE-NIMBLE-BY-SNMP__AUTHPROTOCOL
-- md5 md5 Protocole d'authentification SNMPv3 (ex. md5, sha). HPE-NIMBLE-BY-SNMP__AUTHPASSWORD
-- shinkenpass shinkenpass Mot de passe d'authentification SNMPv3. Mode de connexion authPriv
Nom Modifiable sur Unité Défaut Valeur par défaut à l'installation de Shinken Description HPE-NIMBLE-BY-SNMP__AUTHPROTOCOL
-- md5 md5 Protocole d'authentification SNMPv3 (ex. md5, sha). HPE-NIMBLE-BY-SNMP__AUTHPASSWORD
-- shinkenpass shinkenpass Mot de passe d'authentification SNMPv3. HPE-NIMBLE-BY-SNMP__PRIVPROTOCOL
-- des des Protocole de chiffrement SNMPv3 (ex. des, aes). HPE-NIMBLE-BY-SNMP__PRIVPASSWORD
-- shinkenencrypt shinkenencrypt Clé de chiffrement SNMPv3.
Donnée commune
| Nom | Modifiable sur | Unité | Défaut | Valeur par défaut à l'installation | Description |
|---|---|---|---|---|---|
HPE-NIMBLE-BY-SNMP__WORKING-FOLDER-BASE-PATH | l'Hôte ( Onglet Données ) | -- | /tmp | /tmp | Chemin absolu où sera créé le dossier HPE-NIMBLE-BY-SNMP__WORKING-FOLDER-TMP-DIRNAME. |
HPE-NIMBLE-BY-SNMP__WORKING-FOLDER-TMP-DIRNAME | l'Hôte ( Onglet Données ) | -- | shinken | shinken | Nom de dossier temporaire où seront stockés les fichiers temporaires générés par les sondes. Ne peut contenir uniquement des caractères alphanumériques, slash, antislash, espace, guillemet simple et double, tiret et tiret du bas. |
Désinstaller le pack avec "uninstall.sh"
Entrée dans le répertoire extrait de l'archive et lancer le "uninstall.sh"
cd hpe-nimble-by-SNMP__shinken ./uninstall.sh
Ce mécanisme va seulement enlever les fichiers mis en place lors de l'installation ( Fichier du collecteur d'import, définition des éléments de supervision, et les sondes proposées ), mais ne touchent pas aux éléments que vous avez absorbés dans le Synchronizer.
==========================================================
UNINSTALL PACK [ hpe-nimble-by-SNMP__shinken V02.00.00-RC000.02 ]
==========================================================
-----------------------------
| MONITORING DEFINITION:
=> Deleting pack monitoring definition folder
- Path : /etc/shinken-user/source-data/source-data-shinken-additional-packs-import/packs/hpe-nimble-by-SNMP__shinken
=> Deleting pack monitoring definition file
- Path : /etc/shinken-user/source-data/source-data-shinken-additional-packs-import/packs/hpe-nimble-by-SNMP__shinken.pack
=> Deleting pack monitoring globaldata folder
- Path : /etc/shinken-user/source-data/source-data-shinken-additional-packs-import/global-data/hpe-nimble-by-SNMP__shinken
=> Deleting shinken pack globaldata folder
- Path : /etc/shinken/resource.d/shinken-additional-packs-import/global-data/hpe-nimble-by-SNMP__shinken/
-----------------------------
| PROBES:
=> Deleting probes
- Path : /var/lib/shinken-user/libexec/shinken-additional-packs/hpe-nimble-by-SNMP__shinken
==========================================================
PACK [ hpe-nimble-by-SNMP__shinken V02.00.00-RC000.02 ] SUCCESSFULLY UNINSTALLED
==========================================================
À noter : Vous devrez retirer les éléments importés dans le Synchronizer ( modèles d'hôtes, checks, ... ) via les actions de masses .
Erreurs lors de l'utilisation du pack
Pour toute erreur survenue lors de l'exécution des checks, voir la page Erreurs du pack hpe-nimble-by-SNMP__shinken.

