| Scroll Ignore | ||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||
|
Contexte
Il est
intéressantavantageux d'avoir un démon Poller disponible directement sous Windows
afin, car cela permet d'
avoir à disposition l'exploiter un environnement de lancement soumis aux droits Windows.
Par exemple, une requête lancée en WMI
( via la sonde check_wmic.exe ) pourra utiliser les droits de l'utilisateur avec lequel le service a été démarré
le service et ainsi ne pas avoir besoin, évitant ainsi la nécessité d'un login/password pour
sala requête.
- Donc sur Dans un environnement Active Directory (AD,si vous démarrez votre service en tant que compte de service administrateur sur le domaine, vous pourrez envoyer une requête sur vos hôtes depuis ce Poller, sans utiliser d'identifiant utilisateur ou de mot ), lancer le Poller Shinken de Windows avec un compte administrateur du domaine permet d'envoyer des requêtes aux hôtes de l'AD sans avoir besoin d'inclure des identifiants utilisateur ou des mots de passe dans la commande.
- Votre nouveau Le Poller pourra donc être taggué de manière à récupérer du scheduler alors être configuré ( propriété poller_tags ) pour récupérer du Scheduler uniquement des checks spécifiques exécutables depuis le serveur Windows.
Cette procédure vous permettra d'installer ou de mettre à jour ce Poller Windows.
Installation
Récupération et extraction des données
Installation
| Warning |
|---|
La première installation du Poller Windows ne doit pas provenir d'une version patchée ! Pour une version patchée, faite d'abord une installation de la version non patchée et ensuite appliqué la procédure de mise à jour avec votre version patchée. |
Récupération et extraction de l'archive de Shinken
Shinken pour Windows est fourni sous la forme d'Shinken Entreprise vous a transmis un fichier TAR.GZ contenant des les dossiers et exécutables qui vous permettront de procéder à l'installation d'nécessaires pour installer un Poller sur Windows.
Se Pour procéder à l'installation, il faut se connecter en tant qu'administrateur sur le serveur Windows et ensuite, et extraire ce le fichier TAR.GZ sur le serveur Windows. à la racine du disque ( 7Zip par exemple peut vous permettre permet d'effectuer cette extraction sur Windows )
Installations des dépendances
Afin de mettre en place le Poller il faut installer les dépendances suivantes (contenues à la racine du dossier):
- python-2.7.6.amd64.msi [à installer en premier ]
- pywin32-217.win-amd64-py2.7.exe
- pycurl-7.19.3.1.win-amd64-py2.7.exe
- egenix-pyopenssl-0.13.3.1.0.1.6.win-amd64-py2.7.msi
- psutil-5.2.1.win-amd64-py2.7.exe
Note : laisser les chemins d'installations par défaut
Installation manuelle
- Ouvrir une commande DOS en Administrateur
- Se déplacer dans le répertoire CherryPy-3.2.4
- Exécuter la commande c:\python27\python.exe setup.py install
.
Installation de Shinken
- Ouvrir un shell en administrateur ( l'invite de commande "cmd" ou PowerShell )
- Se rendre dans le dossier issu de l'extraction de l'archive avec la commande cd
Lancer la commande suivante :
Avec PowerShell
Code Block language text theme Emacs ./install.cmdAvec l'invite de commande ( cmd )
Code Block language text theme Emacs install.cmd
Vérification l'installation du Poller
- Le fichier C:\shinken\var\pollerd.log.DATE doit exister.
- Le port 7771 doit être ouvert. Lancer la commande suivante :
Avec PowerShell
Code Block language text theme Emacs netstat -an | Select-String 7771Code Block language text theme Emacs TCP 0.0.0.0:7771 0.0.0.0:0 LISTENING
Avec l'invite de commande ( cmd )
Code Block language text theme Emacs netstat -an | find "7771"Code Block language text theme Emacs TCP 0.0.0.0:7771 0.0.0.0:0 LISTENING
Configuration du Poller Windows
Mise en place des scripts
Déposer les scripts dans le dossier suivant de votre Poller Windows :
| Code Block | ||||
|---|---|---|---|---|
| ||||
C:\shinken\libexec |
Sur le serveur du Synchronizer, il faut créer une variable dans le fichier /etc/shinken/resource.d/paths.cfg
Par exemple :
| Code Block | ||||
|---|---|---|---|---|
| ||||
$WINDOWSUSERPLUGINSDIR$=C:/shinken/libexec |
Cette variable sera utilisée lors de la création de la commande.
Création d'un tag Poller
Sur le serveur du Synchronizer, modifier le paramètre poller_tags du fichier de configuration du Poller Windows :
| Code Block | ||||
|---|---|---|---|---|
| ||||
poller_tags windows |
Redémarrer le Synchronizer pour la prise en compte du nouveau tag Poller
Création d'une commande exécuté via un Poller Windows
Lors de la création de la commande via l'interface de configuration, il faut ajouter la variable spécifique au Poller Windows ainsi que son tag :
Par exemple :
| Code Block | ||||
|---|---|---|---|---|
| ||||
$WINDOWSUSERPLUGINSDIR$/check_win_process.exe ARGUMENT |
Dans l'onglet "Expert", sur la ligne Tag Poller, sélectionner le tag "windows"
En passant par un fichier .cfg, les paramètres à ajouter sont :
| Code Block | ||||
|---|---|---|---|---|
| ||||
command_line $WINDOWSUSERPLUGINSDIR$/check_win_process.exe ARGUMENT
poller_tag windows |
Résultat final
Une fois la commande ajoutée sur l'hôte, le script en exemple "check_win_process.exe" sera exécuté depuis le Poller Windows :
| Code Block | ||||
|---|---|---|---|---|
| ||||
C:\shinken\libexec\check_win_process.exe ARGUMENT |
Spécificités de certains scripts
Certaines commandes peuvent nécessiter d'autres arguments :
VBS
Ajouter les paramètres suivant devant un script VBS :
| Code Block | ||||
|---|---|---|---|---|
| ||||
cscript.exe //NoLogo $WINDOWSUSERPLUGINSDIR$/check_fileage.vbs ARGUMENT |
PowerShell
Sur le serveur Windows, exécuter la commande suivante sur les terminaux "Windows PowerShell" ET "Windows PowerShell (x86)"
| Code Block | ||||
|---|---|---|---|---|
| ||||
Set-ExecutionPolicy Unrestricted |
Exécuter la commande suivante pour vérifier la prise en compte de la demande :
| Code Block | ||||
|---|---|---|---|---|
| ||||
Get-ExecutionPolicy |
L'application de cette commande donne la possibilité d'exécuter des scripts à distance
Installation du service Automatique Windows
Ouvrir une commande DOS en Administrateur puis exécuter la commande :
- sc create "Shinken-Poller" binpath= "c:\shinken\srvany\srvany.exe" DisplayName= "Shinken-Poller"
- (ATTENTION: les espaces après les = sont nécessaires)
Depuis l'explorateur Windows :
Troubleshooting
Redémarrage du démon Poller
Depuis le gestionnaire des services Windows, démarrez démarrer le service "Shinken-Poller" ou depuis une depuis une commande DOS en administrateur :
| Code Block | ||||
|---|---|---|---|---|
| ||||
net start Shinken-Poller |
Configuration SSL
Pour paramétrer le daemon en SSL, il faut modifier le fichier cfichier c:\shinken\etc\daemons\pollerd-windows.ini et modifier le bloc suivant #suivant :
| Code Block | ||||
|---|---|---|---|---|
| ||||
#-- HTTPS configuration -- |
Vous pourrez alors Il est possible d'activer le SSL et paramétrer vos les certificats.
Démarrage manuel du Poller - pour test
Si Si le service Windows "Shinken-Poller" ne démarre pas, pour "débugger, vous pouvez lancer le démarrage du Poller, ouvrir une commande DOS en Administrateur et tester le démarrage en exécutant la commande:
c:\Python27\python.exe", il est possible de lancer manuellement le Poller sous Windows :
| Code Block | ||||||
|---|---|---|---|---|---|---|
| ||||||
set OPENSSL_CONF=C:\shinken\etc\openssl.cnf
C:\Python311\python.exe -X utf8 c:\shinken\bin\shinken-poller -c c:\shinken\etc\daemons\pollerd-windows.ini |
| Code Block | ||||||
|---|---|---|---|---|---|---|
| ||||||
Set-Item -Path env:OPENSSL_CONF -Value "C:\shinken\etc\openssl.cnf" C:\Python311\python.exe -X utf8 c:\shinken\bin\shinken-poller |
-c c:\shinken\etc\daemons\pollerd-windows.ini |
| Info |
|---|
La ligne de déclaration de la configuration OpenSSL est indispensable pour démarrer le Poller Windows, même lorsque le chiffrement SSL n’est pas activé. Sans cette déclaration, le Poller ne pourra pas démarrer. |
Réseau
Bien vérifier que la communication réseau entre votre l'architecture Shinken et ce le nouveau Poller Windows est opérationnelle.
- En effet, un firewall pourrait bloquer des communications importantes, ce qui pourrait provoquer des problèmes entre les différents démons.
- Le port d'écoute 7771 doit être également ouvert sur le Poller Windows.
Si besoin, suivant les définitions des démons de votre la configuration, la résolution de nom doit également aussi permettre au Poller Windows de communiquer avec les autres démons et inversement.
Droits
Lors de vos des installations, bien penser à il faut être connecté en administrateur local de la machine , ou administrateur du domaine si le serveur est sur un domaine.
Limitation du Poller
Il n'est pas possible de limiter le CPU pour un Poller Windows. Par conséquent, la propriété "max_cpu_queue_per_cpu" dans la définition du Poller, n'aura aucun effet.
En revanche, la limitation sur la mémoire est effective.
Erreur à l'installation de pywin32-217.win-amd64-py2.7.exe
Si à la fin de l'installation vous avez ce message d'erreur :
| Code Block |
|---|
close failed in file object destructor:
sys.excepthook is missing
lost sys.stderr |
Il faut faire l'installation depuis une invite de commande Windows :
.
win32-py2.7.exe