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

    SELINUX=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