| Scroll Ignore | ||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||
|
Contexte
Il est
avantageux d'avoir un démon Poller disponible directement sous Windows
, car cela permet d'
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é
, évitant ainsi la nécessité d'un login/password pour
la requête.
- Dans un environnement Active Directory (AD
- ), 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.
- Le Poller pourra
- alors être configuré ( propriété poller_tags ) pour récupérer du Scheduler uniquement des checks
- exécutables depuis le serveur Windows.
Mise à jour
| title | Sommaire |
|---|
| Table of Contents |
|---|
Installation
Récupération et extraction des données
Shinken Entreprise vous a transmis pour Windows est fourni sous la forme d'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.
Afin de mettre en place le Poller il faut installer les dépendances suivantes (contenues à la racine du dossier):
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
.
exeNote : 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
Arrêt du service Shinken-
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 :
- Importer le fichier poller.reg dans votre registre en double cliquant dessus
- Depuis la console MMC des services Windows (depuis les Outils d'Administration ou par la commande services.msc), changer le service Shinken-Poller en "Automatique" depuis les propriétés du service et changer le compte qui va exécuter le service (sur un compte administrateur local ou de domaine)
- Démarrer alors le service en cliquant sur "démarrer" sur la ligne du service Shinken-Poller de la console MMC ou par la commande : net start Shinken-Poller
- Vérifier qu'il est lancé avec :
- 1/ le log C:\shinken\var\pollerd.log.DATE
- 2/ le port 7771 qui doit être ouvert, vous pouvez le vérifier à l'aide de la commande netstat -an
- 3/ une fois le nouveau Poller déclaré en configuration, depuis votre installation centrale, exécuter la commande shinken-healthcheck : vos Pollers doivent être valides et accessibles.
- Note : une à deux minutes sont parfois nécessaires afin que la configuration soit diffusée
Mise à jour
La mise à jour d'un démon Poller Windows est manuelle. Sur votre serveur Windows, réalisez l'extraction du fichier compressé que vous avez téléchargé (utilisez 7-zip par exemple), et suivez les différentes étapes.
Poller
Depuis le gestionnaire des services Windows, arrêtez le service "Shinken-Poller" ou depuis une commande DOS en administrateur :
Code Block language text theme Emacs net stop Shinken-Poller
- Depuis le gestionnaire de tâche Windows, bien vérifier que les processus "python.exe" ( liés au service Shinken ) ne soient plus présents. Si après l'arrêt du service Shinken-Poller, des processus "python.exe" sont toujours ouverts, vous pouvez les terminer.
Backup
Les manipulations de remplacements de fichiers pouvant être délicates, nous vous conseillons de faire une copie complète de c:\shinken dans un dossier de backup de votre choix (exemple c:\temp\backup\).
Remplacement des fichiers
- Copiez le fichier context.json (qui se trouve à la racine de votre dossier décompressé) dans c:\shinken\var\ [remplacer le fichier]
Il faut supprimer l'ancien code de Shinken en supprimant le dossier suivant:
c:\shinken\shinkenATTENTION: il ne faut PAS supprimer le répertoire c:\shinken en entier, mais seulement le répertoire "shinken" à l'intérieur.
Il faut placer le nouveau code shinken:
- windows - XXX\shinken\shinken à copier dans c:\shinken\shinken
- Vérifier que le fichier c:\shinken\shinken\daemon.py est bien présent (pour vérifier que les répertoires sont au bon endroit).
Faite de même pour le répertoire shinkensolutions dans C:\Python27\Lib\site-packages
- Vérifiez que le fichier C:\Python27\Lib\site-packages\shinkensolutions\vmguestlib.py est bien présent
Mise à jour 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 ./update.cmdAvec l'invite de commande ( cmd )
Code Block language text theme Emacs update.cmd
Vérification la mise à jour 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
Redémarrage du démon Poller
Depuis le gestionnaire des services Windows, démarrez le service "Shinken-Poller" ou depuis une commande DOS en administrateur :
net start Shinken-PollerTroubleshooting
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.