Il existe des tonnes d'outils disponibles pour surveiller votre infrastructure informatique. Cela inclut la surveillance des serveurs Linux, des conteneurs, des bases de données, des applications et plus encore.
Des services comme BetterUptime sont pratiques et nous l'utilisons pour la surveillance des temps d'arrêt.
Cependant, pour un contrôle plus granulaire, je préfère déployer des outils comme Prometheus avec le magnifique tableau de bord Grafana.
Récemment, je suis tombé sur un projet qui donne une vue complète de votre infrastructure informatique dans un laps de temps très court.
Checkmk pour la surveillance de l'infrastructure informatique
Avec Checkmk, vous pouvez exploiter efficacement de puissantes capacités de surveillance pour surveiller non seulement les serveurs, mais également les réseaux, les clouds, les conteneurs et les applications.
Checkmk est disponible en deux éditions principales. L'édition d'entreprise gérée coûte de l'argent, mais elle a plus de fonctionnalités.
Il a également une édition gratuite et open source appelée Checkmk Raw Edition (RE).
Je vais montrer comment déployer et configurer Checkmk RE pour surveiller vos serveurs.
Configuration de Checkmk RE pour la gestion des serveurs Linux
Je vais vous présenter Checkmk RE et vous montrer comment vous pouvez l'installer, le configurer et enfin l'utiliser. J'ai suivi la documentation officielle et je l'ai honnêtement trouvée assez complexe à configurer par rapport aux outils précédents que j'avais explorés.
Par conséquent, j'ai décidé de me concentrer sur l'amélioration de cette expérience grâce à cet article.
Avant de commencer, je tiens à rappeler que, comme Cockpit, l'installation d'une version Docker de Checkmk Raw Edition n'est pas tout à fait recommandée en pratique générale.
Installez Checkmk RE sur le serveur que vous souhaitez surveiller
Vous devez avoir Checkmk RE et l'agent Checkmk installés pour pouvoir surveiller votre serveur. Au moment de l'examen, j'ai testé la version 2.0.0p7.
Télécharger le package nécessaire
Pour ce tutoriel, je vais d'abord télécharger Checkmk RE sur un serveur Ubuntu 20.04 :
wget https://download.checkmk.com/checkmk/2.0.0p7/check-mk-raw-2.0.0p7_0.focal_amd64.deb
Vérifier le package Checkmk
Installez dpkg-sig
pour la vérification du colis. Assurez-vous également que gpg
est installé.
sudo apt -y install dpkg-sig gpg
Après cela, obtenez la clé gpg :
[email protected]:~$ gpg --keyserver keyserver.ubuntu.com --recv-keys 434DAC48C4503261
gpg: directory '/home/avimanyu/.gnupg' created
gpg: keybox '/home/avimanyu/.gnupg/pubring.kbx' created
gpg: /home/avimanyu/.gnupg/trustdb.gpg: trustdb created
gpg: key 434DAC48C4503261: public key "Check_MK Software Release Signing Key (2018) <[email protected]>" imported
gpg: Total number processed: 1
gpg: imported: 1
[email protected]:~$ gpg --armor --export 434DAC48C4503261 > Check_MK-pubkey.gpg
Ajoutez la clé publique nouvellement obtenue :
[email protected]:~$ sudo apt-key add Check_MK-pubkey.gpg
OK
Vous pouvez maintenant vérifier le package Checkmk que vous venez de télécharger :
[email protected]:~$ dpkg-sig --verify check-mk-raw-2.0.0p7_0.focal_amd64.deb
Processing check-mk-raw-2.0.0p7_0.focal_amd64.deb...
GOODSIG _gpgbuilder B1E7106575B723F00611C612434DAC48C4503261 1625600497
GOODSIG
indique une vérification réussie. Passons maintenant à l'installation.
Installer Checkmk Raw Edition
Vous pouvez utiliser apt
pour installer directement le package récemment téléchargé :
sudo apt -y install ~/check-mk-raw-2.0.0p7_0.focal_amd64.deb
Juste pour être sûr, pour le plaisir, assurez-vous que le apache2
service est actif et que le port 80 (utilisé par Apache) n'est pas déjà utilisé par un autre service.
[email protected]:~$ systemctl status apache2
● apache2.service - The Apache HTTP Server
Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
Active: active (running) since Wed 2021-07-14 17:30:18 UTC; 6s ago
Docs: https://httpd.apache.org/docs/2.4/
Process: 46288 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
Main PID: 46309 (apache2)
Tasks: 55 (limit: 4617)
Memory: 7.1M
CGroup: /system.slice/apache2.service
├─46309 /usr/sbin/apache2 -k start
├─46310 /usr/sbin/apache2 -k start
└─46311 /usr/sbin/apache2 -k start
Créez votre première interface utilisateur Web (UI) pour le premier accès
Avant de commencer la surveillance, vous devez d'abord créer votre interface utilisateur Web avec Open Monitoring Distribution (OMD).
Ici, j'ai défini le nouveau nom du site comme mysite
:
[email protected]:~$ sudo omd create mysite
Adding /opt/omd/sites/mysite/tmp to /etc/fstab.
Creating temporary filesystem /omd/sites/mysite/tmp...OK
Updating core configuration...
Generating configuration for core (type nagios)...Precompiling host checks...OK
OK
Restarting Apache...OK
Created new site mysite with version 2.0.0p7.cre.
The site can be started with omd start mysite.
The default web UI is available at http://localhost/mysite/
The admin user for the web applications is cmkadmin with password: KgjKy6wpR
For command line administration of the site, log in with 'omd su mysite'.
After logging in, you can change the password for cmkadmin with 'htpasswd etc/htpasswd cmkadmin'.
Une fois cela fait, vous recevrez des identifiants d'accès importants ainsi que des instructions utiles pour démarrer avec votre nouvelle interface utilisateur. Je vous recommande d'enregistrer le résultat dans un document séparé pour le conserver en lieu sûr.
Si vous avez un accès physique au serveur, vous pouvez utiliser localhost
dans le navigateur Web comme ceci.
localhost/mysite
Dans les deux cas, vous pouvez accéder à la configuration avec l'adresse IP publique de votre serveur. Par exemple, si son adresse IP est 1.2.3.4, votre URL d'accès serait :
1.2.3.4/mysite
S'il a un nom de domaine (disons checkmk.domain.com), utilisez :
checkmk.domain.com/mysite
Ensuite, vous devriez voir une interface de connexion comme celle-ci :
Utilisation des informations d'identification obtenues après la création de mysite
, connectez-vous à Checkmk. Le nom d'administrateur par défaut, comme vous l'avez peut-être noté, est cmkadmin
.
Installer l'agent Checkmk
Pour pouvoir ajouter des hôtes (serveurs), vous devez maintenant installer l'agent Checkmk via une installation de package. L'URL de téléchargement du package peut être obtenue en procédant comme suit :
Accédez à Configuration et choisissez Linux sous les agents sous-menu :
Localisez le paquet Debian (puisque j'utilise Ubuntu):
Faites un clic droit et copiez l'URL sur votre navigateur (Firefox dans ce cas):
Une fois que vous avez copié l'URL, téléchargez-la sur le serveur avec wget
. Supposons que l'IP est 1.2.3.4
, la commande correspondante serait :
wget http://1.2.3.4/mysite/check_mk/agents/check-mk-agent_2.0.0p7-1_all.deb
Une fois le téléchargement terminé, installez le package de l'agent :
sudo apt -y install ~/check-mk-agent_2.0.0p7-1_all.deb
Vous êtes maintenant prêt à ajouter des serveurs en tant qu'hôtes pour surveiller les activités sur Checkmk.
Préparation de Checkmk pour la surveillance de vos serveurs
Commencez à ajouter le serveur hôte en fonction de chacune des étapes décrites ci-dessous.
Commencez par Configuration > Hôtes > Hôtes .
Sélectionnez "Ajouter un hôte à la surveillance" (répétez cette étape pour ajouter d'autres serveurs).
Entrez le nom d'hôte sous la forme localhost
et sélectionnez "Enregistrer et accéder aux tests de connexion "(Utilisez l'adresse IP publique ou le nom de domaine du serveur comme nom d'hôte pour les serveurs distants).
Attendez que les tests de connexion soient terminés.
Une fois les tests terminés, cliquez sur "découverte de service ”.
Sélectionnez "Réparer tout » pour diagnostiquer « Services indécis ”.
Cliquez maintenant sur "3 changements ” situé en haut à droite avec le cercle jaune ayant un point d'exclamation. Le nombre de modifications peut varier d'un utilisateur à l'autre.
Sélectionnez "Activer sur les sites sélectionnés ”.
Attendez que l'activation soit terminée.
Une fois l'activation terminée, vous remarquerez "Succès" dans la barre de progression qui finira par devenir verte :
À ce stade, je vais me déconnecter et me reconnecter pour reconfirmer que le serveur que je viens d'ajouter est bien maintenant surveillé par Checkmk :
Surveiller vos serveurs avec Checkmk
En vous reconnectant avec succès, vous remarquerez un hexagone vert révélant votre serveur nouvellement ajouté sur le tableau de bord principal :
Maintenant, accédez à Moniteur > Système > Tableau de bord Checkmk :
Sous-menu système pour un très bref aperçu de la surveillance de votre serveur" loading="lazy" width="567" height ="523">
Notez qu'il est différent du tableau de bord principal vu plus tôt lors de la première connexion après l'ajout de l'hôte. Sur ce tableau de bord Checkmk , vous pouvez voir un très bref aperçu de la surveillance de votre serveur. Cliquez sur localhost
:
Une fois que vous avez cliqué dessus, vous verrez enfin la page de surveillance générique d'un serveur, composée des métriques communément connues, à savoir :
- Charge du processeur
- RAM utilisée
- Débit de disque
- Taille du système de fichiers et espace utilisé
- Défauts de page majeurs
- Latence moyenne du disque
- Réseau
Vous devez naviguer vers cette interface de la manière décrite ci-dessus chaque fois que vous souhaitez surveiller votre serveur. Mais, vous pouvez également créer un signet basé sur l'URL suivante pour l'ouvrir rapidement pour un accès régulier :
http://localhost/mysite/check_mk/dashboard.py?host=localhost&name=checkmk_host&site=mysite
Dans l'URL ci-dessus, remplacez localhost
avec l'IP ou le domaine de votre propre serveur. Remplacez également mysite
avec le nom du site que vous avez défini.
Astuce bonus :surveillance spécifique aux métriques
Si vous souhaitez surveiller les métriques spécifiques au serveur de manière détaillée, Checkmk est là pour vous. Par exemple, si vous souhaitez surveiller la charge ou l'utilisation du processeur en profondeur et individuellement, suivez les étapes ci-dessous :
Accédez à Moniteur > Aperçu > Tous les hôtes
Cliquez sur localhost
:
Cliquez maintenant sur « Charge CPU » ou « Utilisation CPU ». Remarquez qu'il y a tellement d'autres métriques que vous pouvez surveiller individuellement.
Ici, j'ai sélectionné "Charge CPU":
Comme vous pouvez le constater, cette métrique détaillée sur Checkmk permet de surveiller la charge du processeur en fonction de divers paramètres temporels.
J'espère que vous trouverez ce guide utile et que vous essayerez cet outil prometteur par vous-même, que ce soit votre serveur ou même votre système de bureau. Si vous souhaitez ajouter des commentaires, des réflexions ou des commentaires, veuillez le faire dans la section ci-dessous.