Qu'est-ce que Thruk ?
Thruk est une interface de visualisation qui se base sur les données de Livestatus.
- Elle permet de voir tous les éléments déclarés dans Shinken et de faire des actions sur ceci.
Installation via un dépôt de paquets
RHEL / CentOS 7
Il faut s'assurer d'être sur la dernière version d'Apache.
yum update httpd
Ajouter le dépôt labs.consol.de au serveur :
rpm -Uvh "https://labs.consol.de/repo/stable/rhel7/i386/labs-consol-stable.rhel7.noarch.rpm"
Installer les derniers paquets à jour :
yum install thruk
- L'interface est accessible sur le port 80 à l'adresse http://NOM_DU_SERVEUR/thruk et les identifiants par défaut sont thrukadmin/thrukadmin
RHEL / Alma / Rocky 8
Il faut s'assurer d'être sur la dernière version d'Apache.
yum update httpd
Ajouter le dépôt labs.consol.de au serveur :
rpm -Uvh "https://labs.consol.de/repo/stable/rhel8/x86_64/labs-consol-stable.rhel8.noarch.rpm"
Installer les derniers paquets à jour :
yum install thruk
- L'interface est accessible sur le port 80 à l'adresse http://NOM_DU_SERVEUR/thruk et les identifiants par défaut sont thrukadmin/thrukadmin
RHEL / Alma / Rocky 9
Il faut s'assurer d'être sur la dernière version d'Apache.
yum update httpd
Ajouter le dépôt labs.consol.de au serveur :
rpm -Uvh "https://labs.consol.de/repo/stable/rhel9/x86_64/labs-consol-stable.rhel9.noarch.rpm"
Installer les derniers paquets à jour :
yum install thruk
- L'interface est accessible sur le port 80 à l'adresse http://NOM_DU_SERVEUR/thruk et les identifiants par défaut sont thrukadmin/thrukadmin
Debian 13
Il faut s'assurer d'être sur la dernière version d'Apache.
apt update && apt install apache2
Ajouter le dépôt build.opensuse.org au serveur :
curl -s "https://build.opensuse.org/projects/home:naemon/signing_keys/download?kind=gpg" -o /etc/apt/trusted.gpg.d/home-naemon.asc echo "deb [trusted=yes,allow-insecure=yes,signed-by=/etc/apt/trusted.gpg.d/home-naemon.asc] https://download.opensuse.org/repositories/home:/naemon/Debian_13 ./" > /etc/apt/sources.list.d/home-naemon.list apt update
Installer les derniers paquets à jour :
apt install --allow-unauthenticated thruk
- L'interface est accessible sur le port 80 à l'adresse http://NOM_DU_SERVEUR/thruk et les identifiants par défaut sont thrukadmin/thrukadmin
- [ Recommandé ] Supprimer ou commenter le dépôt une fois l'installation terminée ( fichier /etc/apt/sources.list.d/home-naemon.list ).
Désactivation de SELinux
Avant toute chose, si SELinux est installé sur le serveur ( par défaut sous les systèmes RedHat et ses dérivées ), il faut désactiver SELinux pour éviter d'avoir à le gérer pour le moment.
Par défaut, SELinux va empecher Thruk d'accéder à ses fichiers :
Désactivation permanente : Modifier le fichier de configuration de SELinux et redémarrer le serveur
/etc/selinux/configSELINUX=disabled
Désactivation temporaire :
setenforce 0
Authentification
L'authentification n'est pas gérée directement par Thruk mais au travers d'Apache. Le fichier /etc/thruk/htpasswd contient les données utiles pour l'authentification des utilisateurs dans Thruk.
Dans l'exemple, on va définir un mot de passe pour l'utilisateur 'thrukadmin':
htpasswd /etc/thruk/htpasswd thrukadmin
Ajout d'un backend
Pour obtenir les statuts de Shinken, il faut déclarer un backend dans le fichier de configuration ( /etc/thruk/thruk_local.conf ). Thruk va utiliser ce backend pour récupérer les hôtes, checks ainsi que leurs statuts :
#This one activates all problem/impact and criticity features. Don’t enable it unless all your backends are shinken. If not set, it will be automatically enabled when using only shinken backends.
enable_shinken_features = 1
#Determines whether html output from plugins is escaped or not.
escape_html_tags = 0
<Component Thruk::Backend>
<peer>
name = Shinken
type = livestatus
<options>
peer = 127.0.0.1:50000
</options>
</peer>
</Component>
Le "peer" étant l'adresse du broker
Pour fonctionner, il faut aussi activer Livestatus sur le Broker côté Shinken ( voir la page Module Livestatus ).
Redémarrage d'Apache après ajout
RHEL / CentOS 7 et RHEL / Alma / Rocky 8 et 9
systemctl restart httpd
Debian 13
systemctl restart apache2