Contexte
Installation
Récupération et extraction des données
Shinken Entreprise vous a transmis un fichier TAR.GZ contenant des dossiers et exécutables qui vous permettront de procéder à l'installation d'un Poller sur Windows.
Se connecter en administrateur sur le serveur, et extraire ce TAR.GZ sur le serveur Windows. (7Zip par exemple peut vous permettre 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:
- installation de CherryPy-3.2.4:
- 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
- Depuis l'explorateur Windows :
- Copier le répertoire "shinken" vers C:\shinken
- Copier tools\srvany.exe dans c:\shinken\srvany\ [remplacer le fichier]
- Copier context.json dans c:\shinken\var [remplacer le fichier]
- Ouvrir le fichier C:\shinken\var\context.json avec le bloc note
- Modifier la valeur current_version par la version de votre installation - par exemple : 02.04.00-137.fr
- Modifier la valeur current_version par la version de votre installation - par exemple : 02.04.00-137.fr
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 via 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 (via 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 via la commande : net start Shinken-Poller
- Vérifier qu'il est lancé avec :
- 1/ le log C:\shinken\var\pollerd.log
- 2/ le port 7771 qui doit être ouvert, vérifiable avec 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
- 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.
Arrêt démon Poller
Depuis le gestionnaire des services Windows, arrêtez le service "Shinken-Poller" ou depuis une commande DOS en administrateur :
- net stop Shinken-Poller
Depuis le gestionnaire de tache 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\).
Pour les anciennes installations (avant V02.04.00)
Afin de mettre à jour une ancienne installation (avant V02.04.00), il est nécessaire de mettre à jour une nouvelle dépendance qui n'était pas installée à l'origine: psutil-5.2.1.win-amd64-py2.7.exe.
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\shinken
ATTENTION: 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).
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-Poller
Troubleshooting
Configuration SSL
Pour paramétrer le daemon en SSL, il faut modifier le fichier c:\shinken\etc\daemons\pollerd-windows.ini et modifier le bloc suivant #-- HTTPS configuration --
Vous pourrez alors activer le SSL et paramétrer vos certificats.
Démarrage manuel du Poller - pour test
Si le service Windows 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 c:\shinken\bin\shinken-poller.py -c c:\shinken\etc\daemons\pollerd-windows.ini
- c:\Python27\python.exe c:\shinken\bin\shinken-poller.py -c c:\shinken\etc\daemons\pollerd-windows.ini
Réseau
Bien vérifier que la communication réseau entre votre architecture Shinken et ce nouveau Poller Windows est opérationnelle.
En effet, un firewall pourrait bloquer des communications importantes, ce qui pourrait provoquer des problèmes entres 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 configuration, la résolution de nom doit également permettre au Poller Windows de communiquer avec les autres démons et inversement.
Droits
Lors de vos installations, bien penser à ê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équence, 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.