Sommaire
Contexte
Ce guide a pour finalité de permettre la mise à jour de Shinken Entreprise sur un serveur Linux ( RHEL / Alma / Rocky / Debian ).
- Une fois le guide de mise à jour suivi, les interfaces de Configuration et de Visualisation de Shinken seront de nouveaux accessibles, si elles étaient actives.
- La configuration de l'installation Shinken ne sera pas modifiée suite à la mise à jour ( les données dans les fichiers de configuration ne sont pas modifiées ).
Important
L'installation de Shinken Entreprise met en place deux bases de donnée :
- MongoDB ( version v3.0.15 ).
- Cette base de données est utilisée par les interfaces de Configuration et de Visualisation et la sauvegarde de la rétention s'il y a plusieurs Schedulers dans un royaume.
- Voir la page En base de données ( MongoDB )
- Graphite ( version 1.1.8 ).
- Cette base permet de stocker les métriques de vos sondes.
- Voir la page Base de métrologie ( Graphite )
Pour ne pas créer de dysfonctionnement, nous vous demandons de ne pas mettre à jour MongoDB / Graphite.
- Veuillez simplement laisser en place les versions fournies par nos services.
Afin de prévenir tout risque, les démons Shinken Entreprise refuseront de démarrer si la version installée de MongoDB n'est pas celle préconisée.
Si une version différente de MongoDB est déjà présente sur le serveur, la mise à jour sera interrompue.
Utilisation d'un antivirus
Dans le cadre de l'utilisation d'un antivirus sur les serveurs Shinken, veuillez vous référer à la page Restrictions à appliquer aux antivirus pour mettre en place les exclusions indispensables au bon fonctionnement des services.
Historique de l'installeur
Concernant la version de l'installeur à utiliser, il faut prendre le dernier en date.
02.08.02
Voici l'historique des installeurs de cette version :
| Nom de la version | Date de parution | Nom de l'installeur | Modification par rapport à la version précédente |
|---|---|---|---|
RC019.08 ... RC019 | 25 Fev. 2025 ... 17 Nov. 2025 | RC019.10
RC019.08
| Modification de l'installeur : 1 - Désormais, l'installeur de Shinken n'est plus séparé par langue, mais par la distribution linux ciblée :
2 - Désormais, l'installation de Shinken est compatible avec les distributions RHEL 9, Alma 9 et Rocky 9. 3 - Chaque installeur ( en fonction de la distribution ) fournit tous les packs de langue. 4 - Mise à jour du Python 3.11 ( version 3.11.14 ) utilisé par Shinken avec les correctifs de sécurité de Python. 5 - Mise à jour des paquets système ( .rpm ou .deb ) fournis par l'installeur. 6 - Les dépendances système ( .rpm ou .deb ) nécessaires à Shinken sont désormais disponibles via un dépôt local temporaire mis en place par l'installeur ( il sera supprimé à la fin de la mise à jour ) Liste des autres modifications : Voir la release note |
RC018.05 ... RC018 | 24 Oct. 2025 | shinken-enterprise_V02.08.02-RC018.05_FR_Linux_FULL_2025-10-24.tar.gz | Modification de l'installeur : 1 - Le script de mise à jour de Shinken permet de renseigner les identifiants de connexion à MongoDB lorsque l’authentification par mot de passe est activée dans la base. 2 - Le script d'installation vérifie la présence d'un serveur de synchronisation de temps par le réseau ( NTP ) et installe Chrony s'il n'y en a pas. 3 - Ajout de l'option --disable-time-server-setup-if-missing pour désactiver l'installation de Chrony. 4 - Désormais, l'installation de Shinken est compatible avec la distribution Debian 13. Liste des autres modifications : Voir la release note |
RC017.02 ... RC017 | 19 juin 2025 ... 20 mai 2025 | shinken-enterprise_V02.08.02-RC017.02_FR_Linux_FULL_2025-06-16.tar.gz | Modification de l'installeur : 1 - Mise à jour du Python 3.11 ( version 3.11.11 ) utilisé par Shinken avec les correctifs de sécurité de Python. Liste des autres modifications : Voir la release note |
RC016.06 ... RC016 | 19 mai 2025 ... 27 février 2025 | shinken-enterprise_V02.08.02-RC016.06_FR_Linux_FULL_2025-05-15.tar.gz | Liste des autres modifications : Voir la release note |
RC015.19 ... RC015 | 23 juin 2025 ... 12 Aout 2024 | shinken-enterprise_V02.08.02-RC015.12_FR_Linux_FULL_2025-01-16.tar.gz | Modification de l'installeur : 1 - Tous les démons fonctionnent avec Python 3.11.8. 2 - Désormais, l'installation de Shinken est compatible avec les versions RHEL/Alma 8.10. 3 - L'installation de Shinken est désormais possible sur les distributions Rocky 8.9 et 8.10. Liste des autres modifications : Voir la release note |
RC014.05 RC014.04 RC014.03 RC014.02 RC014.01 RC014 | 11 avril 2024 | shinken-enterprise_V02.08.02-RC014.05_FR_Linux_FULL_2024-04-05.tar.gz | Modification de l'installeur : 1 - Désormais, l'installation de Shinken est compatible avec les versions RHEL/Alma 8.9. 2 - Les démons Poller et Reactionner fonctionnent avec Python 3.11.8. 3 - Mise à jour du Python 2.7 ( version 2.7.18-15 ) utilisé par les autres démons de Shinken avec les correctifs de sécurité de RedHat. 4 - Ajout de l'option --skip-nagvis. 5 - Suppression du support de RHEL / CentOS 6. Liste des autres modifications : Voir la release note |
| RC013 | 04 octobre 2023 | shinken-enterprise_V02.08.02-RC013_US/FR_Linux_FULL_2023-10-03.tar.gz | Voir la release note |
| RC012.01 RC012.02 RC012.03 | 13 septembre 2023 | shinken-enterprise_V02.08.02-RC012.01_US/FR_Linux_FULL_2023-07-13.tar.gz | Modification de l'installeur : 1 - L'exclusion des "nagios-checks" et de leurs dépendances par les paramètres --packs-to-install / --packs-to-exclude est désormais fonctionnelle en RHEL7 / Centos7 ( elle était réservée à la RHEL8 / Alma8 auparavant ). Liste des autres modifications : Voir la release note |
| RC012 | 06 juillet 2023 | shinken-enterprise_V02.08.02-RC012_US/FR_Linux_FULL_2023-07-05.tar.gz | Modification de l'installeur : 1 - Les dossiers /var/lib/shinken-nagvis et /opt/nagvis/ dans lesquels NagVis va s'installer, peuvent maintenant être des points de montage. 2 - Depuis la mise à jour de RHEL/Alma en 8.8 ( fait le 18/05/2023 ), l'installation des versions précédentes de Shinken échouait. Désormais l'installation est compatible sur les RHEL/Alma 8.5 à 8.8 incluses. Liste des autres modifications : Voir la release note |
| RC011 | 07 Avril 2023 | shinken-enterprise_V02.08.02-RC011_US/FR_Linux_FULL_2023-04-04.tar.gz | Modification de l'installeur : 1 - Désormais l'installation est possible sur les systèmes Alma 8. Liste des autres modifications : Voir la release note |
| RC010 | 07 Mars 2023 | shinken-enterprise_V02.08.02-RC010_US/FR_Linux_FULL_2023-03-07.tar.gz | Voir la release note |
| RC009 | 01 décembre 2022 | shinken-enterprise_V02.08.02-RC009_US/FR_Linux_FULL_2022-11-17.tar.gz | Modification de l'installeur : 1 - Désormais l'installation est possible sur les systèmes RHEL 8.5 & 8.6 2 - Rajout de l'option "--packs-to-install" : permet de ne sélectionner que les dépendances listées. 3 - Rajout de l'option "--packs-to-exclude" : permet de ne pas installer les dépendances listées. Liste des autres modifications : Voir la release note |
| RC008 | 15 novembre 2022 | shinken-enterprise_V02.08.02-RC008_US/FR_Linux_FULL_2022-11-07.tar.gz | Voir la release note |
| RC007.03 | 23 septembre 2022 | shinken-enterprise_V02.08.02-RC007.03_US/FR_Linux_FULL_2022-09-23.tar.gz | Voir la release note |
| RC007.02 | 19 septembre 2022 | shinken-enterprise_V02.08.02-RC007.02_US/FR_Linux_FULL_2022-09-19.tar.gz | Voir la release note |
| RC007.01 | 30 Août 2022 | shinken-enterprise_V02.08.02-RC007.01_US/FR_Linux_FULL_2022-08-30.tar.gz | Voir la release note |
| RC007 | 29 Mai 2022 | shinken-enterprise_V02.08.02-RC007_US/FR_Linux_FULL_2022-06-22.tar.gz | Modification de l'installeur : 1 - Ajout du paramètre "--ignore-pre-setup-non-blocking-errors" dans l'installation de patchs et de mise à jour pour passer outre les erreurs non importantes pour le bon fonctionnement de Shinken. Pour l’instant, seul le backup pré-installation est impacté. Liste des autres modifications : Voir la release note |
| RC006.02 | 23 Mai 2022 | shinken-enterprise_V02.08.02-RC006.02_US/FR_Linux_FULL_2022-04-14.tar.gz | Version d'origine ( non finale pour l'instant ). |
Mise à jour de Shinken Entreprise
Prérequis
Concernant l'OS
Environnement requis :
| Distribution RHEL | 7 | 8 | 9 |
|---|---|---|---|
| Red Hat | 7.2 => 7.9 | 8.5 => 8.10 | 9.7 |
| Alma | 7.2 => 7.9 | 8.5 => 8.10 | 9.7 |
| Rocky | 7.2 => 7.9 | 8.5 => 8.10 | 9.7 |
| CentOS | 7.2 => 7.9 |
Environnement requis :
| Distribution Debian | 13 |
|---|---|
| Debian | 13 |
Shinken Entreprise a choisi les distributions suivantes :
- RHEL ( Red Hat Enterprise Linux ) est la distribution référente dans l'écosystème professionnel Linux
- CentOS ( Community enterprise Operating System ) est une distribution dont tous les paquets, à l'exception du logo, sont des paquets compilés à partir des sources de la distribution RHEL ( Red Hat Enterprise Linux ).
- Elle est donc quasiment identique à celle-ci et se veut 100 % compatible d'un point de vue binaire
- Elle est donc quasiment identique à celle-ci et se veut 100 % compatible d'un point de vue binaire
- Alma et Rocky sont deux successeurs de CentOS, les versions de CentOS supérieures à la 7 étant maintenant construites à partir de Fedora, elles ont d'avantage une vocation de distributions bêta-test et elles sont moins adaptées à des serveurs de production.
- Debian est la distribution communautaire de référence dans l'écosystème Linux, elle sert également de base à d'autres distributions.
Ces distributions Linux, principalement destinées aux serveurs, sont stables, performantes et compatibles avec une très grande majorité des environnements professionnels.
Concernant le support de ces distributions :
| Distribution | Version distribution | Date support éditeur distribution | Gérée actuellement par Shinken | Sera gérée dans les prochaines versions de Shinken | Recommandations Shinken |
|---|---|---|---|---|---|
RHEL | 6.10 | plus supportée | Non | Non | Cette version de la distribution n'est plus supportée depuis la version V02.08.02-RC014 de Shinken. |
| 7.2 → 7.9 | juin 2024 | Oui | Oui | Faire une mise à jour en RHEL 7.9 si possible. | |
| 8.5 → 8.10 | mai 2029 | Oui | Oui | Gérée depuis la V02.08.02-RC009. | |
| 9.7 | Février 2026 | Oui | Oui | Gérée depuis la V02.08.02-RC019.10. | |
| Alma | 8.5 → 8.10 | mai 2029 | Oui | Oui | Successeur de CentOS, similaire à la RHEL 8. Gérée depuis la V02.08.02-RC012. |
| 9.7 | Février 2026 | Oui | Oui | Gérée depuis la V02.08.02-RC019.10. | |
| Rocky | 8.9 → 8.10 | mai 2029 | Oui | Oui | Successeur de CentOS, similaire à la RHEL 8. Gérée depuis la V02.08.02-RC015. |
| 9.7 | Février 2026 | Oui | Oui | Gérée depuis la V02.08.02-RC019.10. | |
| CentOS | 6.10 | plus supportée | Non | Non | Cette version de la distribution n'est plus supportée depuis la version 02.08.02-RC014 de Shinken. |
| 7.2 → 7.9 | juin 2024 | Oui | Oui | Faire une mise à jour en Centos 7.9 si possible. Nous conseillons de déplacer cette installation vers une Alma 8. | |
| 8 | plus supportée | Non | Non | La version 8 a été annoncée comme arrêtée fin 2021 et ne sera donc pas gérée. | |
| Debian | 13 | Juin 2030 | Oui | Oui | Gérée depuis la V02.08.02-RC018.05. |
Information sur le cycle de vie des distributions Linux
RHEL
Les sous-versions impaires ( Exemple : 8.3, 8.5, 8.7, 8.9 ) ont un support que de 6 mois.
- Nous conseillons donc de n'utiliser que les sous-versions paires ( Exemple : 8.4, 8.6, 8.8, 8.10 ) ( voir la page https://access.redhat.com/support/policy/updates/errata ).
Alma / Rocky
La sortie d'une nouvelle sous-version met fin au support de la sous-version précédente ( voir pour Alma https://wiki.almalinux.org/release-notes/ et pour Rocky https://wiki.rockylinux.org/rocky/version/ ).
Debian
Toutes les versions de la distribution Debian disposent d'un support d'au moins 5 ans. Un support commercial est également disponible pour encore allonger ce délai. ( voir https://www.debian.org/releases/, https://wiki.debian.org/LTS et https://wiki.debian.org/LTS/Extended ).
Concernant la transformation de la CentOS en CentOS Stream ( Beta de la RHEL )
Redhat a changé sa politique concernant CentOS, qui devient maintenant une version Beta de RHEL.
Là où précédemment, elle était une recompilation à l'identique de RHEL, elle est désormais une distribution sans version fixe ( dite "rolling release" ) en amont de RHEL :
- qui sert à RedHat afin de tester des nouvelles versions de paquets, avant leur sélection, si les tests sont fonctionnels, dans RHEL.
- Elle récupère ainsi le rôle qu'avait Fedora avant elle.
- Elle ne nous semble donc pas viable pour une utilisation professionnelle en production.
Depuis la version V02.08.02-RC012 Shinken prend en charge l'installation sur les distributions Alma et depuis la version V02.08.02-RC015 Shinken prend en charge l'installation sur les distributions Rocky. Ce sont deux remplaçantes possibles de CentOS.
Transformer une CentOS en RHEL
Nous ne recommandons pas de convertir une CentOS en RHEL, mais de procéder à l'installation d'un nouveau serveur et de migrer les données entre les deux serveurs Shinken.
Toutefois, pour réaliser cette opération, des informations sont disponibles sur la page : ( PROCEDURE ) Passer de Centos 7.9 à RedHat 7.9 .
Concernant RHEL
Attention - Enregistrement Redhat
Lors d'une installation de distribution Redhat Enterprise Linux ( commerciale ), il faut associer la souscription Redhat au système.
Voici les commandes à utiliser depuis le serveur:
1/ subscription-manager register
( -> Nom d'utilisateur / mot de passe )
et il faut également l'attacher à l'OS en cours:
2/ subscription-manager attach
Yum pourra alors être utilisé correctement car l'abonnement sera valide ( et donc Shinken pourra être installé )
Prérequis navigateur web
Microsoft Edge Microsoft Edge ( version Chromium )Chrome Microsoft Egde. Firefox Version des navigateurs supportés
Depuis RC18.05
N° de version supportés depuis la version RC18.05 Navigateur N° de version Date de sortie Google Chrome >= 88 Jan. 2021 >= 88 Jan. 2021 Mozilla Firefox >= 85 Jan. 2021 Avant RC18.05
N° de version supportés depuis la version RC18.04 Navigateur N° de version Date de sortie Google Chrome >= 56 Jan. 2017 >= 80 Jan. 2020 Mozilla Firefox >= 54 Juin. 2017
Concernant les versions de Shinken Entreprise
IMPORTANT
Pour mettre à jour Shinken depuis une version majeure qui dispose d'un patch qui n'a pas été installé ( exemple : V02.08.01, avec le cumulativePatch-25 ) vers une nouvelle version majeure ( exemple : V02.08.02 RC015 ) :
- Il faut directement installer la nouvelle version majeure sans appliquer le dernier patch disponible de la version déjà installée.
- Exemple : inutile appliquer le CumulativePatch-25 de la V02.08.01 pour passer en V02.08.02
- Ensuite, s'il existe un patch pour cette nouvelle version majeure, il faut immédiatement appliquer le dernier patch disponible de la nouvelle version majeure.
IMPORTANT : Il n'est pas possible de rétrograder la version de Shinken.
- Exemple : Il n'est pas possible de mettre à jour une installation de Shinken en version V02.08.01 vers une version antérieure de Shinken comme la V02.08.00.
Extraction du package et mise à jour
Prérequis a la mise a jour
Il faut être loggué en tant que root.
$id uid=0(root) gid=0(root)
Et que le umask du compte root soit à 0022.
$umask 0022
Extraction de l'installeur
Il existe plusieurs installeurs qui dépendent de la distribution Linux sur laquelle Shinken va être installé :
- Un pour les distributions RHEL 7 et CentOS 7 ;
- Un pour les distributions RHEL 8, Alma 8 et Rocky 8 ;
- Un pour les distributions RHEL 9, Alma 9 et Rocky 9 ;
- Un pour la distribution Debian 13 ;
Chaque binaire est nommé suivant un nom précis :
shinken-enterprise_V02.08.XX-RC0XX.XX_ALL-LANG_Linux-LISTE_DES_DISTRIBUTIONS_FULL_AAAA-MM-JJ.tar.gz
« Décompresser » le package :
tar zxvf shinken-enterprise_V02.08.XX-RC0XX.XX_ALL-LANG_Linux-LISTE_DES_DISTRIBUTIONS_FULL_AAAA-MM-JJ.tar.gz
Cela créera un répertoire shinken-entreprise contenant le script et les dépendances nécessaires à l’installation.
Se placer à la base du répertoire shinken-entreprise
cd shinken-enterprise_V02.08.XX-RC0XX.XX_ALL-LANG_Linux-LISTE_DES_DISTRIBUTIONS_FULL_AAAA-MM-JJ
Exécuter le script :
./update.sh
Ce qui aura pour effet :
- Avant la mise à jour, de faire une sauvegarde, placée dans le dossier /root/shinken/versions_and_patch_installations/DATE-HEURE-update-NUMERO_VERSION/backup-pre-update/ .
Elle est nommée de la manière suivante : " DATE__HEURE__NUMERO_VERSION___backup-preupdate-version-NUMERO_VERSION ".
Son contenu diffère en fonction des démons activés sur la machine :- La configuration est sauvegardée si le Synchronizer est activé.
- Les données utilisateurs sont sauvegardées si le Broker est activé.
- De mettre à jour Shinken Entreprise, mais sans aucune incidence sur le dossier de configuration de /etc/shinken.
- Sans risque d'écrasement d'une configuration précédemment définie.
- Les mises à jour sur des fichiers modifiés dans ce dossier créeront un fichier avec l'extension :
- .rpmnew sur les distributions RHEL, Alma, Rocky ou CentOS ;
- .dpkg-dist sur la distribution Debian ;
- De nouvelles propriétés pourront figurer dans ces fichiers, il est conseillé de les parcourir, et, si besoin, de récupérer ces nouvelles propriétés pour les intégrer dans le fichier de configuration original ( celui sans l'extension supplémentaire ).
Documentation liée à la version installée
La documentation ( en français ) est maintenant intégrée au package d'installation.
- Elle est disponible dans l'archive shinken-enterprise_V02.08.XX-XXXX.tar.gz dans le répertoire tools/documentation/
- La première page de la documentation est index.html qui peut être ouverte avec un navigateur internet.
La documentation de Shinken est aussi accessible sur chaque serveur Shinken via l'URL http(s)://HOTE DE SHINKEN:PORT D'APACHE/shinken-documentation
- Les pages de documentation sont déposées par l'installeur dans /opt/shinken/documentation/.
- Elles sont consultables via un alias du serveur Apache ( shinken-documentation ).
Mise à jour ( Mode avancé )
Options disponibles
| Option | Valeur par défaut | Description |
|---|---|---|
--activate-encryption ARG
| --- | Activer le chiffrement ( voir le chapitre Mise en place du chiffrement ).
|
--disable-important-notices-user-input | --- | Désactiver les prompts demandant confirmation avant de continuer le processus de mise à jour.
( voir le chapitre Passer les demandes de saisies lors de la mise à jour ). |
--disable-time-server-setup-if-missing | --- | Ne pas installer Chrony si aucun serveur de synchronisation du temps par le réseau ( NTP ) n'est présent ( voir le chapitre Serveur de synchronisation du temps par le réseau ). |
--disable-daemons-restart-after-update
| --- | Désactiver le redémarrage des démons à la fin de la mise à jour ( voir le chapitre Désactiver le redémarrage des démons à la fin de la mise à jour ). |
--package-update-only-on-conflict
| --- | Option dépréciée ( suite à l'utilisation d'un dépôt de paquets local par l'installeur ) |
--skip-redhat-subscription-check
| --- | Ne pas mettre à jour les paquets déjà installés,
( Option non utilisée sur les systèmes Alma 8, CentOS 7, Debian 13, Rocky 8 ) |
--packs-to-install ARG
| --- | N'installer que les dépendances listées ( voir le chapitre Permettre d'exclure l'installation ou la mise à jour de certaines dépendances de sondes ). |
--packs-to-exclude ARG
| --- | Ne pas installer les dépendances listées ( voir le chapitre Permettre d'exclure l'installation ou la mise à jour de certaines dépendances de sondes ). |
--ignore-pre-setup-non-blocking-errors
| --- | Ignorer certaines erreurs "mineures" qui pourraient arriver pendant les étapes non essentielles pour le bon fonctionnement de Shinken. Cette option ignore les problèmes suivants :
N'utiliser cette option qu’en présence de votre support dédié |
--skip-nagvis
| --- |
Options de connexion à la base MongoDB
La commande dispose d'options de connexion à la base MongoDB qui peuvent être utilisés dans les cas suivants : La combinaison des options de connexion à MongoDB peut rapidement devenir complexe ; voici des paramètres adaptés aux cas les plus courants.
localhost Nom ou IP du serveur MongoDB. 27017 Port de la base MongoDB. shinken ( ou synchronizer si la commande concerne la base du Synchronizer ) Nom de la base de données à utiliser dans MongoDB. À n'utiliser que si la configuration du module ou du démon a changé la base utilisée par défaut.
--- Active la connexion SSH au serveur MongoDB. /var/lib/shinken/.ssh/id_rsa Clé privée SSH pour la connexion au serveur MongoDB. À utiliser en complément de l'option --mongo-use-ssh. shinken Utilisateur à utiliser pour la connexion SSH. À utiliser en complément de l'option --mongo-use-ssh.
--- Utilisateur pour l'authentification avec mot de passe. --- Mot de passe de l'utilisateur pour l'authentification avec mot de passe. À utiliser en complément de l'option --mongo-username. Si l'option --mongo-password est utilisée, le mot de passe risque d'être visible dans l'historique des commandes ( via la commande history ). Pour éviter d'exposer le mot de passe, il est possible d'utiliser cette commande uniquement avec l'option --mongo-username. Un prompt interactif apparaîtra alors pour demander le mot de passe. Pour automatiser les commandes dans un script, il est possible de rediriger le contenu d'un fichier contenant le mot de passe ( par exemple : --mongo-password $(cat my_file_with_password) ).
--- Active SSL/TLS pour les communications avec la base MongoDB. --- Chemin vers le fichier de l’autorité de certification ( CA ) utilisé pour vérifier le certificat SSL de MongoDB. À utiliser en complément de l'option --mongo-ssl. --- Chemin vers le fichier contenant le certificat SSL du client. À utiliser en complément de l'option --mongo-ssl. --- Mot de passe du certificat SSL du client. À utiliser en complément de l'option --mongo-ssl. --- Chemin vers le fichier CRL ( liste de révocation ) des certificats SSL à rejeter. À utiliser en complément de l'option --mongo-ssl. --- Accepter le certificat SSL de MongoDB même si le nom d’hôte du certificat ne correspond pas à celui du serveur. À utiliser en complément de l'option --mongo-ssl. --- Accepter le certificat SSL de MongoDB même s’il est invalide, par exemple expiré. À utiliser en complément de l'option --mongo-ssl.Options génériques
[root@serveur01 ~] shinken-commande --mongo-host 127.0.0.1 --mongo-port 27017 --mongo-database shinken
Option Valeur par défaut Description Options de connexion SSH
[root@serveur01 ~] shinken-command --mongo-host serveur02 --mongo-port 27017 --mongo-use-ssh --mongo-ssh-key /var/lib/shinken/.ssh/id_rsa --mongo-ssh-user shinken
Option Valeur par défaut Description Options d'authentification
[root@serveur01 ~] shinken-command --mongo-host 127.0.0.1 --mongo-port 27017 --mongo-username shinken --mongo-password shinken
Option Valeur par défaut Description Options SSL/TLS
[root@serveur01 ~] shinken-command --mongo-host serveur02 --mongo-port 27017 --mongo-ssl-ca-file /etc/shinken/certs/mongo/ca.pem --mongo-ssl-pem-key-file /etc/shinken/certs/mongo/client.pem
Option Valeur par défaut Description
Passer les demandes de saisies lors de la mise à jour
--disable-important-notices-user-input | --- | Désactiver les prompts demandant confirmation avant de continuer le processus de mise à jour.
|
Pour automatiser l'installation de Shinken, via un script Ansible par exemple, il est possible de désactiver les demandes de saisies lors de la mise à jour de Shinken.
Il est toutefois fortement conseillé de faire au moins une mise à jour sans passer les demandes de saisies, afin de lire les informations fournies lors de la mise à jour, avant de l'automatiser.
Mise en place du chiffrement
--activate-encryption ARG | --- | Activer le chiffrement.
|
Le chiffrement peut être mis en place automatiquement au moment de la mise à jour ( voir la page Protection des données sensibles de l'UI de Configuration ).
Si vous n'avez jamais activé le chiffrement des données sensibles, nous vous conseillons de procéder à la mise à jour sans activer le chiffrement et de découvrir la fonctionnalité par la lecture de la page Protection des données sensibles de l'UI de Configuration.
Une clé de chiffrement sera alors générée lors du processus de mise à jour et la base de données du Synchronizer sera chiffrée.
Pour cela, lancer la commande suivante :
./update.sh --activate-encryption <nom de clé>
La mise en place automatique du chiffrement nécessite dans tous les cas d'effectuer l'export et la sauvegarde de la clé générée ( voir la page shinken-protected-fields-keyfile-export ).
La commande shinken-healthcheck permettra de vérifier la bonne configuration des démons et du chiffrement.
Serveur de synchronisation du temps par le réseau
--disable-time-server-setup-if-missing | --- | Ne pas installer Chrony si aucun serveur de synchronisation du temps par le réseau ( NTP ) n'est présent. |
Du fait de son architecture distribuée, pour éviter toutes incohérences des données, il est primordial que tous les serveurs de Shinken soient à l'heure ( voir la page Les serveurs de supervision doivent impérativement être à l'heure via ntp ou chrony ).
Le script de mise à jour va vérifier la présence d'un démon assurant la synchronisation de l'horloge du système avec un ou des référents sur le réseau.
- Si aucun n'est fonctionnel, Chrony est installé.
- Si la synchronisation de l'horloge du système est assurée par un autre moyen, il est possible de désactiver l'installation de Chrony avec l'option --disable-time-server-setup-if-missing.
Désactiver le redémarrage des démons à la fin de la mise à jour
--disable-daemons-restart-after-update
| --- | Désactiver le redémarrage des démons à la fin de la mise à jour. |
Pour automatiser une mise à jour sur plusieurs machines, et synchroniser le démarrage de tous les démons ( afin d'éviter par exemple qu'un Arbiter mis à jour tente de parler avec des démons qui ne le sont pas ), il suffit d'utiliser l'option --disable-daemons-restart-after-update.
Le redémarrage des démons pourra être géré de façon indépendante après la mise à jour.
Faire la mise à jour sur un serveur RHEL non enregistré sur les dépôts RedHat
--skip-redhat-subscription-check | --- | Ne pas vérifier la souscription du serveur auprès de RedHat
|
Debian 13 ou CentOS 7 ou Alma / Rocky 8 et 9
L'option --skip-redhat-subscription-check est sans effet sur cette distribution Linux.
- En effet, il n'y a pas d'enregistrement à faire chez RedHat pour ces distributions Linux.
RHEL 7, RHEL 8 ou RHEL 9
Si un serveur avec la distribution RHEL a un accès uniquement à des dépôts de paquets ( "repository" ) locaux, il ne sera pas enregistré directement chez RedHat.
- Sur les distributions RHEL, le script de mise à jour se base sur la vérification de cet enregistrement afin de déterminer si le serveur a bien accès aux dépôts de paquets.
- Ici cette vérification va bloquer l'installation alors que le serveur a bien accès à des dépôts locaux.
- Il faut alors utiliser l'option suivante :
- --skip-redhat-subscription-check : permets de ne pas lancer la vérification de la souscription du serveur auprès de RedHat ( mais il faut avoir tout de même accès à des dépôts locaux ).
Permettre d'exclure l'installation ou la mise à jour de certaines dépendances de sondes
--packs-to-install ARG | --- | N'installer que les dépendances listées. |
--packs-to-exclude ARG | --- | Ne pas installer les dépendances listées. |
Le script de mise à jour permet de choisir de ne pas déployer certaines dépendances de sondes que l'administrateur ne souhaite pas installer, par exemple les paquets sqlplus d'Oracle.
Il est important de noter qu'à l'heure actuelle seules les dépendances des sondes ne sont pas installées.
- les modèles, checks et commandes sont toujours présents dans l'interface de configuration.
- Nous allons faire en sorte que les modèles, checks, et commande des packs exclus ne soient pas présents après une mise à jour.
Les options disponibles sont :
- --packs-to-install : permet de ne sélectionner que les dépendances listées
- --packs-to-exclude : permet de ne pas installer les dépendances listées
Les "packs" disponibles pour ces options sont :
- oracle : les dépendances des sondes oracle, notamment le paquet sqlplus fournis par Oracle.
- mssql : les dépendances pour les sondes MSSQL / SQL Server.
- nagios-checks : les sondes Nagios et leurs dépendances.
- bacula : le check de vérification de l'outil de backup Bacula, avec ses dépendances systèmes.
- À exclure en cas d'utilisation d'une version de bacula issue du site www.bacula.org, car ce dernier fournit des dépendances incompatibles.
L'administrateur peut choisir d'utiliser une ou l'autre des options :
--packs-to-install : nagios-checks,mssql
installera uniquement les dépendances ( fichiers rpm ) des packs nagios et mssql, donc pas les paquets pour oracle par exemple
--packs-to-exclude: oracle,nagios-checks
exclura les dépendances des dépendances ( fichiers rpm ) des packs oracle et nagios-checks
Pour les futures mises à jour de Shinken, il faudra utiliser ces options à chaque fois pour préciser la liste des dépendances à inclure ou à exclure.
Exclure l'installation ou la mise à jour de Nagvis
--skip-nagvis | --- | Ne pas installer Nagvis sur le serveur. |
Le script de mise à jour permet de ne pas installer Nagvis.
Nagvis est installé par défaut avec Shinken. Il est nécessaire au fonctionnement de deux add-ons
- nagvis ( voir la page NagVis ( Addon ) )
- nagvis-shinken-architecture ( voir la page Configuration de la Visualisation de l'architecture )
Ces deux add-ons sont utilisés par le Broker et l'Arbiter.
Pour l'installation d'un autre démon ou si ces add-ons ne sont pas nécessaires, il est possible de choisir de ne pas installer Nagvis avec l'option --skip-nagvis.
Pour les futures mises à jour de Shinken, il faudra utiliser cette option à chaque fois pour ignorer l'installation de Nagvis.
Après une installation sans Nagvis, pour pouvoir activer les addons, il faudra effectuer une mise à jour de Shinken sans l'option pour ne pas installer Nagvis.
Migration de certains fichiers de configuration
Lors d'une mise à jour, il peut arriver que certains fichiers de configuration changent de place.
- Le script de mise à jour va gérer ces déplacements de façon transparente.
- Si un de ces déplacements implique d'écraser des fichiers existants, les fichiers originaux seront préservés et copiés avec l'extension .patchsave
Les modules à activer manuellement ( car les précédentes versions ne les activaient pas par défaut )
Lors d'une mise à jour depuis une version antérieure, avec une architecture complexe, le script de mise à jour ne peut pas toujours déterminer, avec certitude, quel module peut être installé / activé automatiquement.
- Il est alors possible des les activer manuellement
Activer le Bac à événements
Il est nécessaire d'ajouter les modules :
- Le module event-manager-writer sur les brokers ( cela permettra d'enregistrer les données nécessaires au bac à événements ).
( voir la page Module event-manager-writer ) - Le module event-manager-reader sur les modules WebUI ( cela permettra aux WebUI d'accéder aux données enregistrées dans le bac à événements ).
( voir la page Module event-manager-reader )
Activer la Météo des services
Il est nécessaire d'ajouter le module :
- Le module webui-module-service-weather sur les modules WebUI.
( voir la page Module webui-module-service-weather )
Vérification du bon fonctionnement
Pour vérifier que Shinken Entreprise est bien mis à jour, configuré et fonctionnel, lancer dans un shell la commande :
$ shinken-healthcheck
Elle permettra d'avoir une vision des différents serveurs/éléments qui composent l'architecture Shinken Entreprise.
- Voir la page Shinken-healthcheck - Vérifier le bon fonctionnement de Shinken Entreprise pour plus de détails sur résultat de cette commande.
Mise à jour des checks via la source cfg-file-shinken
Lors de la mise à jour de Shinken, de nombreux checks peuvent être ajoutés ou mis à jour ( via des modèles du Pack shinken, du Pack Linux, et du Pack windows ).
Les éléments de ces packs ( checks, modèles, commandes ) sont disponibles au travers de la source "cfg-file-shinken" du Synchronizer :
Il est vivement conseillé d'activer la source afin de regarder les mises à jour possibles, via les éléments qui apparaîtront en "nouveau" et en "différence".
Si des personnalisations ont déjà été faites sur les éléments de ces packs, il faudra faire preuve de vigilance avant d'appliquer les différences.
Cependant, il est au moins conseillé de mettre à jour les éléments relatifs au Pack shinken ( éléments en "nouveau" et en "différence" )
Mise à jour avec un cluster Mongo
Dans la version V02.07.00, la base Mongodb est mise à jour.
- Lorsque Mongodb a été configuré pour fonctionner en tant que cluster, le comportement du script de mise à jour de Shinken Entreprise a été modifié pour prendre en compte cette configuration particulière.
- Des explications détaillées sont présentes dans la page de documentation dédiée : Si Shinken Inférieur à V02.07.00 - Montée de version en Mongodb 3.0 (réalisée automatiquement sous conditions )
Clé de licence Shinken Enterprise
Le service Commercial de Shinken Enterprise délivre des licences nominatives permettant d'utiliser pleinement le produit.
La licence est un fichier qui a le nom suivant : user.key. Cette licence est nominative et limitée dans le temps.
Pour l'installer, il suffit de :
- Placer ce fichier sur le serveur hébergeant l'Arbiter et sur les serveurs hébergeant le ou les UIs de Visualisation, dans le chemin suivant : /etc/shinken/user.key
- Redémarrer Shinken Enterprise via la commande :
service-shinken restart
Enfin, relancer la commande shinken-healthcheck. Le message d'erreur de licence doit avoir disparu. Voici un exemple d'information de licence valide :
En l'absence de clé de licence ou si celle-ci a expiré, contactez-nous : contact@shinken-solutions.com
Résolution des problèmes liés à la mise à jour
Les logs de la mise à jour
Pour chaque installation/mise à jour, un dossier est créé dans ~/shinken /versions_and_patch_installations/ et nommé de la manière suivante :
- Pour les mises à jour :
YYYY-MM-DD-HHhMMmSS-update-VXX.XX.XX/update_logs/
Ce dossier contient les données suivantes :
- Détails d'installation des paquets : update__shinken_enterprise_detail.log
- Nettoyage de la configuration : update__sanitize.log
- Affichage du script de mise à jour : update__shinken_enterprise.log
- Sauvegarde de la configuration et données utilisateur : ../backup-pre-update/
- Log de l'installation des packages via yum: update__last_rpm_install.log
Erreur lors des actions automatiques
Lors de la mise à jour, il y a un certain nombre d'actions ( sanitize ) qui sont automatiquement réalisées.
- Si une de ces actions échoue, il faudra créer un ticket auprès du support avec les fichiers de logs de la mise à jour.
Exemple d'erreur
Erreurs concernant MongoDB
Si le script de mise à jour ne parvient pas à se connecter à la base Mongo
Lors du démarrage de la mise à jour de Shinken, une vérification est effectuée pour s'assurer que la base de données est accessible. Si MongoDB n'est pas accessible, la mise à jour de Shinken est interrompue, et le message suivant s'affiche :
Il est nécessaire de vérifier que la base de données est bien démarrée et que les paramètres d'accès sont correctement configurés ( port, nom du serveur, authentification, tunnel SSH, etc ).
Vérifier que la base de données est opérationnelle
systemctl status mongod
Vérifier les paramètres d'accessibilité de la base dans le fichier de configuration de la base : /etc/mongod.conf
La version de MongoDB installée sur le système n'est pas une version validée par Shinken Solutions.
Le script de mise à jour refuse de s'exécuter avec l'erreur suivante :
ERROR: Mongodb is already installed but your Mongodb version XX.YY.ZZ is not supported for install/update"
S'assurer que la version de MongoDB utilisée est la 2.6.9 pour les installations antérieures à Shinken Entreprise 2.6.1 et la 3.0.15 pour les versions de Shinken Entreprise plus récentes.
Résoudre un problème d'installation de paquets système ( .rpm ou .deb )
Si l'installeur ne parvient pas à installer certaines dépendances système, un message de ce style sera affiché :
Aborting as package installation failed. Output is available in SHINKEN_INSTALLATION_LOG_FILE file. Please report this issue to your dedicated support. You can try to solve this issue by running yum install some-dependency other-dependency and run this script again
Sous Debian la ligne :
yum install some-dependency other-dependency
est remplacée par :
apt install some-dependency other-dependency
Rejouer la commande yum ou apt avec ses paramètres, telle qu'elle est affichée dans le message de l'installeur, pour obtenir la nature de l'erreur.
Si certains paquets ne peuvent être installés ou mis à jour, activer les dépôts indiqués dans la section suivante ( Télécharger des paquets manquants depuis un autre système ) sur le système.
Sinon, pour un système déconnecté, ou ne disposant pas d'un accès aux dépôts de la distribution, il faut passer par un serveur connecté avec un accès à ces dépôts, afin de télécharger ces paquets.
Télécharger des paquets manquants depuis un autre système
Debian 13
Étape 1 : Créer un environnement minimal
Sur un système disposant d'un accès aux dépôts de la distribution :
apt update apt -y install debootstrap rm -fr /root/stable-chroot/ debootstrap stable /root/stable-chroot/
Étape 2 : Télécharger des paquets manquants dans l'environnement minimal
# Se placer dans cet environnement : chroot /root/stable-chroot/ # Supprimer les paquets précédemment téléchargés apt clean # Télécharger les paquets problématiques apt --download-only --reinstall -y -o "APT::Install-Recommends=1" install some-dependency other-dependency # Quitter l'environnement minimal exit
Étape 3 : Récupérer les paquets téléchargés
# sur le système connecté : rm -fr /root/shinken-missing-debs mkdir /root/shinken-missing-debs cp -nv /root/stable-chroot/var/cache/apt/archives/*.deb /root/shinken-missing-debs/ # ==> Transférer le dossier /root/shinken-missing-debs sur le système déconnecté # sur le système déconnecté : apt install ./shinken-missing-debs/*.deb
Relancer l'installation de Shinken, si d'autres paquets manquent, reprendre à l'étape 2 avec ces nouveaux paquets.
RHEL / CentOS 7
Étape 1 : Configurer les dépôts nécessaires
RHEL
subscription-manager repos --enable="rhel-7-server-optional-rpms" rpm --import https://dl.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-7 yum -y install https://dl.fedoraproject.org/pub/archive/epel/7/x86_64/Packages/e/epel-release-7-14.noarch.rpm
CentOS
yum install -y epel-release
Les dépôts ayant été archivés ( suite à la fin de vie de la distribution ), il peut être nécessaire d'utiliser les miroirs vault :
sed -i.orig s/mirror.centos.org/vault.centos.org/g /etc/yum.repos.d/*.repo sed -i.orig s/^#.*baseurl=http/baseurl=http/g /etc/yum.repos.d/*.repo sed -i.orig s/^mirrorlist=http/#mirrorlist=http/g /etc/yum.repos.d/*.repo yum clean all
Étape 2 : Installer l'utilitaire permettant de récupérer les paquets
yum install yum-utils
Étape 3 : Télécharger les paquets manquants
rm -fr /root/shinken-missing-rpms repotrack --arch=x86_64 --download_path=/root/shinken-missing-rpms some-dependency other-dependency # repotrack télécharge toutes les variantes ( architectures ) d'un paquet, inutile de garder les versions 32 bits rm -f /root/shinken-missing-rpms/*.i686.rpm
Étape 4 : Récupérer les paquets téléchargés
# ==> Transférer le dossier /root/shinken-missing-rpms sur le système à installer # Sur le système déconnecté yum install /root/shinken-missing-rpms/*.rpm
Relancer l'installation de Shinken, si d'autres paquets manquent, reprendre à l'étape 3 avec ces nouveaux paquets.
RHEL / Alma / Rocky 8 et 9
Étape 1 : Configurer les dépôts nécessaires
RHEL 8
subscription-manager repos --enable codeready-builder-for-rhel-8-$(arch)-rpms rpm --import http://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-8 dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
RHEL 9
subscription-manager repos --enable codeready-builder-for-rhel-9-$(arch)-rpms rpm --import http://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-9 dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm
Alma 8
dnf config-manager --set-enabled powertools dnf install -y epel-release
Alma 9
dnf install -y epel-release dnf config-manager --set-enabled crb
Rocky 8
dnf config-manager --set-enabled powertools dnf install -y epel-release
Rocky 9
dnf config-manager --set-enabled crb dnf install -y epel-release
Étape 2 : Télécharger les paquets manquants
rm -fr /root/shinken-missing-rpms dnf download --arch x86_64,noarch --resolve --alldeps --downloaddir=/root/shinken-missing-rpms
Étape 3 : Récupérer les paquets téléchargés
# ==> Transférer le dossier /root/shinken-missing-rpms sur le système à installer # Sur le système déconnecté yum install /root/shinken-missing-rpms/*.rpm
Relancer l'installation de Shinken, si d'autres paquets manquent, reprendre à l'étape 2 avec ces nouveaux paquets.














