Checkmk
to checkmk.com
Important

This is a machine translation based on the English version of the article. It might or might not have already been subject to text preparation. If you find errors, please file a GitHub issue that states the paragraph that has to be improved.

1. Introduction

Example of a graph.

Outre la supervision proprement dite du système — c'est-à-dire la détection des problèmes —, Checkmk est un excellent outil pour l'enregistrement et l'analyse des diverses valeurs mesurées pouvant être générées dans les environnements informatiques. Il peut s'agir, par exemple :

  • Les performances du système d'exploitation (E/S disque, utilisation du processeur et du stockage, …​)

  • Les statistiques réseau (bande passante utilisée, temps de transfert des paquets, taux d’erreur, …​)

  • Capteurs environnementaux (température, humidité, pression atmosphérique, …​)

  • Statistiques de charge de travail (utilisateurs connectés, requêtes de pages, sessions, …​)

  • Les indicateurs de qualité des applications (par exemple, les temps de réponse des sites web)

  • Consommation et qualité de l'électricité dans un centre de données (intensités, tensions, puissance, capacités des batteries, etc.)

  • Données spécifiques aux applications (par exemple, longueur des files de courriers électroniques provenant de MS Exchange)

  • et bien plus encore…

Checkmk enregistre toutes les mesures générées par la supervision sur une période (personnalisable) de quatre ans, afin de pouvoir accéder non seulement aux données actuelles, mais aussi aux données historiques. Afin de maîtriser l'utilisation de l'espace disque, les données sont de plus en plus compressées à mesure qu'elles vieillissent.

Les métriques elles-mêmes sont détectées par les plugins de supervision individuels. Ce sont donc les plugins qui déterminent exactement quelles métriques sont fournies.

CEE L'interface de visualisation des données historiques mesurées est basée sur HTML5 et est identique dans les éditions commerciales et dans Checkmk Community. Les éditions commerciales vous permettent en exclusivité d'utiliser des fonctionnalités avancées telles que l'exportation au format PDF, les collections de graphiques, les graphiques définis par l'utilisateur et la connexion à des bases de données de métriques externes.

2. Accès via l'interface graphique

Les valeurs mesurées d’un service sont présentées sous trois formes différentes dans l’interface graphique. Le « Perf-O-Meter » apparaît directement dans les tableaux d’un ordinateur hôte ou d’un service et offre un aperçu rapide ainsi qu’une comparaison visuelle. Ceux-ci sont toutefois généralement limités, par manque de place, à une seule métrique sélectionnée. Pour les systèmes de fichiers, par exemple, il s’agit du pourcentage d’espace utilisé :

View of the localhost with Perf-O-Meter values.

Vous pouvez afficher toutes les métriques d’un service sur une période donnée, soit en passant le curseur sur le symbole graphique d’icon pnp, soit en cliquant dessus. La valeur @ située à droite au-dessus du graphique indique l’intervalle de temps auquel les nouvelles données sont récupérées et ajoutées. Par exemple, @ 1m correspond à un intervalle de temps d’une minute.

Ces mêmes graphiques sont également très faciles à trouver dans les détails d’un ordinateur hôte ou d’un service :

Graph of CPU utilization.

Un tableau présentant les valeurs mesurées actuelles précises pour toutes les métriques est également disponible sur une page de détails :

Excerpt of the service metrics.

3. Interaction avec les graphiques

Vous pouvez influencer de manière interactive l'affichage des graphiques de différentes manières :

  • En effectuant un panoramique (ou en faisant glisser) tout en maintenant le bouton de la souris enfoncé, vous déplacez la période (vers la gauche/vers la droite) ou modifiez l'échelle verticalement (vers le haut/vers le bas).

  • En utilisant la molette de la souris pour effectuer un zoom avant ou arrière sur la période

  • En faisant glisser le coin inférieur droit du graphique pour modifier sa taille

  • En cliquant sur un emplacement du graphique, vous placez un repère. Vous pouvez ainsi identifier l'heure exacte d'un point et toutes les valeurs mesurées précises pour cet instant. L'heure exacte du repère est enregistrée pour chaque utilisateur et s'affiche sur tous les graphiques.

  • En cliquant sur l'en-tête d'une colonne, vous définissez l'affichage des valeurs sur les valeurs minimales, maximales ou moyennes.

Visualization of possible interactions in a graph.

Si une page comporte plusieurs graphiques, tous les graphiques s’adaptent aux modifications apportées à la période et au repère — ainsi, les valeurs peuvent toujours être comparées d’un graphique à l’autre. De même, le redimensionnement s’applique à tous les graphiques. Ces réajustements n’apparaîtront toutefois qu’après un rafraîchissement de la page (sinon, l’affichage risquerait parfois de devenir chaotique…)

Dès que vous utilisez les fonctions interactives ― telles que le réglage d’un repère ―, un grand symbole « pause » apparaît à l’écran et l’actualisation de la page s’arrête pendant 60 secondes. Cela signifie que vos modifications dans le graphique ne sont pas immédiatement annulées par l’actualisation. Le compte à rebours est toujours réinitialisé à 60 secondes lorsque vous redevenez actif. Vous pouvez également mettre le compte à rebours en pause complètement en cliquant sur le chiffre. Le symbole de pause vous permet de mettre fin à la pause directement dans tous les cas.

The pause icon in a graph.

4. Collections de graphiques

CEE Dans les éditions commerciales, vous pouvez utiliser le menu « icon menu », qui s’affiche en bas à gauche du graphique, pour l’intégrer à divers endroits — dans des rapports ou des tableaux de bord, par exemple. La section du menu « Add to graph collection » est très utile à cet effet. Vous pouvez regrouper autant de graphiques que vous le souhaitez dans une telle collection de graphiques et les comparer ou les exporter ultérieurement au format PDF. Par défaut, chaque utilisateur dispose d’une collection de graphiques nommée « My graphs ». Vous pouvez très facilement en ajouter de nouvelles, et même les rendre visibles pour d’autres utilisateurs. La procédure est exactement la même que pour les vues de la table.

Vous accédez à votre collection de graphiques via Monitor > Workplace > My graphs. L'entrée « My graphs » n'apparaît que si vous avez effectivement ajouté au moins un graphique à cette collection.

Selection of the graph collection in the 'Monitor' menu.

Customize > Graphs > Graph collections ouvre la liste des collections de graphiques que vous avez créées et vous permet d'en ajouter de nouvelles, de modifier celles qui existent, etc.

5. Personnalisation des graphiques

CEE Dans les éditions commerciales, vous pouvez apporter de légers ajustements aux graphiques intégrés via Customize > Graphs > Graph tunings. Ces Graph tunings vous permettent, par exemple, de modifier l'échelle de l'axe Y d'un graphique particulier, via l'option Vertical axis scaling :

The settings for customizing a graph.

Cette modification peut ensuite être limitée à des occurrences spécifiques du graphique à l'aide de Apply to, par exemple dans les tableaux de bord. L'image suivante montre une mise à l'échelle sur une plage comprise entre 0,5 et 0,9 dans un rapport PDF :

View of a restricted scaling.

De plus, deux autres options sont disponibles : l’option « Graph visibility » permet d’afficher ou de masquer explicitement un graphique à certains emplacements. Et l’option « Vertical axis mirroring » est utile pour les graphiques qui affichent des données au-dessus et en dessous de la chronologie (axe X), comme dans le graphique de débit du disque présenté ci-dessous : ici, les données peuvent être inversées verticalement afin que les données précédemment affichées au-dessus de la chronologie puissent être affichées en dessous, et vice versa.

Remarque : les utilisateurs peuvent définir individuellement les unités de mesure de température des graphiques et des Perf-O-Meters via leur profil. La personnalisation générale des résumés et des vues détaillées s'effectue via le jeu de règles de service Temperature.

6. Graphiques définis par l'utilisateur

CEE Les éditions commerciales fournissent un éditeur graphique grâce auquel vous pouvez créer vos propres graphiques complets avec leurs propres formules de calcul. Il est désormais également possible de combiner des métriques provenant de différents ordinateurs hôtes et services dans un seul graphique.

Vous accédez aux graphiques définis par l'utilisateur via Customize > Graphs > Custom graphs. Une autre méthode consiste à passer par le tableau des métriques d’un service. Pour chaque métrique, il existe un menu «icon menu» (Personnaliser le graphique) comportant une option permettant d’ajouter la métrique à un graphique défini par l'utilisateur :

Selection options for custom graphs.

L'image suivante présente une liste des graphiques définis par l'utilisateur (ici avec une seule entrée) :

Overview of custom graphs.

Cinq opérateurs sont possibles pour chaque graphique existant :

icon custom graph

Afficher ce graphique.

icon insert

Créer une copie de ce graphique.

icon delete

Supprimer ce graphique.

icon edit

Ouvrir les propriétés de ce graphique. Ici, outre le titre du graphique, vous pouvez également définir sa visibilité pour les autres utilisateurs. Toutes ces fonctions s'utilisent exactement de la même manière que pour les vues de la table. Si vous avez des questions concernant l'un des paramètres, vous pouvez afficher l'aide contextuelle en cliquant sur «Help > Show inline help».

icon custom graph

Vous pouvez ici accéder au concepteur de graphiques, dans lequel le contenu du graphique peut être modifié.

Notez que chaque graphique défini par l'utilisateur — tout comme les vues — possède un identifiant unique. Cet identifiant est utilisé dans les rapports et les tableaux de bord. Si vous modifiez ultérieurement l’identifiant d’un graphique, ces liens seront rompus. Tous les graphiques qui ne sont pas hidden s’affichent par défaut sous Monitor > Workplace.

6.1. Le concepteur de graphiques

General view of the graph designer.

Le concepteur de graphiques est divisé en quatre sections :

6.2. Aperçu du graphique graphique

Vous pouvez ici voir le graphique exactement tel qu’il apparaîtra en ligne. Vous pouvez également utiliser toutes ses fonctions interactives.

6.3. Liste des métriques

Les courbes incluses dans les graphiques peuvent être modifiées directement ici. La modification du titre d’une courbe dans ce champ est validée à l’aide de la touche «Enter». L’option «Style» définit la manière dont les valeurs sont affichées dans les graphiques. Voici les options disponibles :

Line

La valeur sera représentée sous forme de ligne

Area

La valeur sera représentée sous forme de zone. Veuillez noter que les courbes situées en haut de la liste ont la priorité sur celles situées plus bas et peuvent les recouvrir. Si vous souhaitez combiner des lignes et des zones, les zones doivent toujours être placées sous les lignes.

Stacked Area

Toutes les courbes de ce type seront représentées sous forme de zones et empilées en fonction de leurs valeurs (en réalité, additionnées). La limite supérieure de cet empilement symbolise donc la somme de toutes les courbes du graphique.

Les trois autres options — Mirrored Line, Mirrored Area et Mirrored Stacked — sont similaires, à l’exception du fait que les courbes sont tracées vers le bas à partir de la ligne zéro. Cela permet d’obtenir un style de graphique tel que celui généralement utilisé par Checkmk dans les graphiques d’entrée/sortie pour ce qui suit :

An input/output graph.

Dans la colonne « Actions », vous trouverez un bouton « button clone » permettant de cloner chaque métrique que vous avez créée. Grâce à cela, vous pouvez rapidement copier des courbes et simplement remplacer le nom de domaine, par exemple.

6.4. Ajout de métriques

La boîte de dialogue « Metrics » vous permet d’ajouter de nouvelles métriques aux graphiques. Dès que vous saisissez un nom de domaine valide dans le premier champ, le deuxième champ s’affiche avec une liste des services de l’ordinateur hôte. En effectuant une sélection dans cette liste, le troisième champ s’affiche avec une liste des métriques de ce service. Dans le quatrième et dernier champ, sélectionnez la fonction de consolidation. Les options disponibles sont « Minimum », « Maximum» et « Average ». Ces fonctions sont utilisées lorsque les données stockées dans les RRD pour la période spécifiée ont déjà été compressées. Dans une période où, par exemple, une seule valeur par demi-heure est disponible, vous pouvez choisir de tracer la valeur mesurée d’origine minimale, maximale ou moyenne pour cette période.

Selection of options for a metric.

De la même manière, vous pouvez utiliser la fonction Add new scalar pour afficher les valeurs d'un service pour l'WARN, l'CRIT, le maximum et le minimum sous forme de lignes horizontales.

View of a constant in a metric.

Vous pouvez également ajouter une constante au graphique. Celle-ci sera initialement représentée sous la forme d’ une ligne horizontale. Les constantes sont parfois nécessaires pour générer des formules de calcul. Nous y reviendrons plus tard.

6.5. Options graphiques

Vous trouverez ici les options qui affectent l'ensemble des graphiques.

Unit influence les étiquettes des axes et des légendes. La valeur par défaut « First entry with unit » spécifie que la première entrée du graphique défini par l'utilisateur dont l’unité est connue est utilisée comme unité. Cela signifie que l’unité des métriques et des scalaires est toujours connue, mais pas celle des constantes. Si aucune entrée ne possède d’unité connue, le graphique s’affiche sans symbole d’unité. Si vous sélectionnez plutôt « Custom », des paramètres supplémentaires s’afficheront, vous permettant de définir vous-même l’unité. Notez qu’il est possible, mais déconseillé, d’ajouter deux métriques avec des unités différentes à un même graphique.

Avec « Explicit vertical range », vous pouvez prédéfinir l’axe vertical d’un graphique. L’ axe Y est normalement mis à l’échelle de manière à ce que toutes les valeurs mesurées dans la période choisie s’inscrivent exactement dans le graphique. Si vous créez un graphique pour des valeurs en pourcentage, par exemple, vous pouvez choisir d’afficher systématiquement les valeurs de 0 à 100. Notez toutefois que les utilisateurs (et vous-même) peuvent dans tous les cas mettre un graphique à l’échelle à l’aide de la souris, rendant ainsi le positionnement inefficace.

6.6. Calculs à l'aide de formules

Le concepteur de graphiques vous permet de combiner les courbes individuelles à l’aide de calculs. L’exemple suivant montre un graphique comportant deux courbes : l’ utilisation du processeur, pour User et System.

Supposons que, pour ce graphique, vous ne soyez intéressé que par la somme des deux courbes. Pour cela, checkez les cases de sélection des deux courbes. Une fois cette opération effectuée, dans le panneauMetrics , sur la ligneOperation on selected metrics , quelques nouveaux boutons seront apparus pour toutes les opérations éligibles :

Additional options in the overview of a graph.

En cliquant sur « Sum », vous combinerez les deux courbes en une nouvelle courbe. La couleur de cette nouvelle courbe sera automatiquement un mélange des couleurs des deux courbes d’origine. La nouvelle courbe sera intitulée « Sum of User, System ». La formule utilisée pour le calcul s’affichera dans la colonne « Formula ». De plus, un nouveau symbole « button dissolve operation » apparaîtra :

View of a graph for combined values.

Cliquer sur « button dissolve operation » (Annuler la fusion) revient à « annuler » l’opération, ce qui permet d’afficher à nouveau les courbes individuelles d’origine. Autres conseils pour les opérations de calcul :

  • Il est parfois judicieux d’inclure des constantes — pour soustraire la valeur d’une courbe du nombre 100, par exemple.

  • Des scalaires peuvent être utilisés pour les calculs.

  • Les opérations peuvent être imbriquées dans n’importe quel ordre.

7. InfluxDB, Graphite et Grafana

CEE Si vous utilisez l'une des éditions commerciales, vous pouvez établir des connexions avec des bases de données de métriques externes en parallèle au système de graphiques intégré à Checkmk et envoyer les métriques vers InfluxDB ou Graphite.

Dans toutes les éditions, il est également possible d'intégrer Checkmk à Grafana et de récupérer et d'afficher les métriques de Checkmk dans Grafana.

8. Valeurs historiques mesurées présentées sous forme de tableaux

8.1. De quoi s'agit-il ?

Lorsque vous consultez les valeurs mesurées par le passé, vous n'êtes parfois pas intéressé par les détails exacts de leur évolution sur une période de temps donnée. Un simple résumé approximatif peut s'avérer plus utile, par exemple l'utilisation du processeur au cours des 7 derniers jours. Dans cet exemple, le résultat serait simplement un chiffre exprimé en pourcentage, tel que 88 %.

Dans un tableau d'hôtes ou de services, vous pouvez ajouter des colonnes représentant la moyenne, le minimum, le maximum ou d'autres résumés d'une métrique sur une période de temps donnée. Cette fonctionnalité vous permet également de créer des rapports triés selon ces colonnes, par exemple pour afficher la liste des hôtes ESXi ayant présenté l'utilisation la plus faible au cours de la période de temps sélectionnée.

Pour afficher ces valeurs mesurées dans une vue de la table, procédez comme suit :

  1. Sélectionnez une vue de la table existante ou créez-en une nouvelle.

  2. Ajoutez une colonne de type «Services: Metric History».

8.2. Création d'une vue

Vous devez d’abord disposer d’une vue à laquelle vous souhaitez ajouter des colonnes. Il peut s’agir d’une vue des ordinateurs hôtes ou des services. Pour plus de détails sur la création ou l’édition des vues de la table, consultez l’article consacré aux vues.

Pour l'exemple suivant, nous choisissons la vue de la table « All hosts », que vous pouvez ouvrir via Monitor > Hosts > All hosts. Dans le menu, sélectionnez « Display > Customize view ». Vous accédez alors à la page « Clone view », où vous pouvez personnaliser la vue à votre guise.

Afin que la vue d'origine All hosts ne soit pas masquée par la copie, choisissez un nouvel identifiant ainsi qu'un nouveau titre sous lequel la vue s'affichera ultérieurement dans le menu Monitor.

Ensuite (facultatif), supprimez toutes les colonnes indiquant le nombre de services dans les différents États.

8.3. Ajouter une colonne

Ajoutez maintenant une colonne de type « Services: Metric History ». Comme il s’agit d’une colonne de services, dans le cas d’une vue de l’ordinateur hôte, vous devez sélectionner le type de colonne « Joined column » en premier, ce qui permet l’affichage d’une colonne de service dans un tableau d’ordinateur hôte. Avec une vue de service, il suffit d’ajouter une nouvelle « Column ».

Options for adding an additional column.

Dans « Metric », sélectionnez le nom de la métrique à évaluer historiquement. Si vous n’êtes pas sûr du nom de la métrique, vous pouvez le trouver dans les détails du service, à l’entrée « Service Metrics » :

View of the service details.

Dans l'exemple, nous choisissons la métrique « CPU utilization », qui correspond d'ailleurs au nom du service.

Avec RRD consolidation, il est préférable de choisir la même valeur que celle utilisée ci-dessous dans Aggregation function, car il serait peu pertinent de calculer des valeurs telles que « le minimum du maximum ». Vous découvrirez en quoi consiste l'option de sélection pour les RRD dans le chapitre suivant consacré à l'organisation des données RRD.

L'option « Time range » correspond à la période de temps passée que vous souhaitez analyser. Dans l'exemple, il s'agit des sept derniers jours, soit exactement 168 heures.

Dans l'exemple, nous choisissons « Util @ 7 days » comme « Column title ». Ne soyez pas surpris si un champ intitulé « Title » apparaît plus tard — vous ne le verrez que si un « Joined column » est utilisé ici, ce qui permet toujours de spécifier un titre. Laissez simplement le deuxième titre vide.

Enfin, dans le champ « Of Service », saisissez le nom du service auquel appartient la métrique sélectionnée ci-dessus. Veillez à respecter l'orthographe exacte du service, y compris les majuscules et les minuscules.

Une fois l'enregistrement effectué, vous obtiendrez une nouvelle vue de la table avec une colonne supplémentaire indiquant le pourcentage de charge de travail du processeur au cours des sept derniers jours.

Host overview with the additional column for CPU utilization

Remarques

  • Vous pouvez bien sûr ajouter plusieurs colonnes de cette manière, par exemple pour différentes métriques ou différentes périodes de temps.

  • Pour les ordinateurs hôtes qui ne disposent pas de la métrique ou du service concerné, la colonne reste vide.

  • Si vous travaillez avec un tableau de services, vous n'avez pas besoin d'une «Joined Column». Cependant, vous ne pouvez afficher qu'un seul service par ordinateur hôte dans chaque ligne.

9. Les bases de données Round Robin (RRD)

Checkmk stocke toutes les valeurs mesurées dans des bases de données spécialement développées, appelées bases de données Round Robin (RRD). On peut utiliser ici l'outil RRDtool de Tobi Oetiker, qui est très populaire et largement utilisé dans les projets libres.

Les RRD offrent des avantages importants pour le stockage des valeurs mesurées par rapport aux bases de données SQL classiques :

  • Les RRD stockent les données mesurées de manière très compacte et efficace.

  • L'espace utilisé par métrique sur le disque est fixe. Les RRD ne peuvent ni s'agrandir ni se réduire. L'espace disque requis peut être planifié avec précision.

  • Le temps CPU et disque par mise à jour est toujours le même. Les RRD sont (pratiquement) capables de fonctionner en temps réel, de sorte que les réorganisations ne peuvent pas provoquer d'engorgements de données.

9.1. Organisation des données dans les RRD

Par défaut, Checkmk est configuré de manière à ce que l'évolution de chaque métrique soit enregistrée sur une période de quatre ans. La résolution de base utilisée est d'une minute. Cela est logique, car l'intervalle de vérification est préréglé sur une minute, de sorte que de nouvelles données mesurées sont reçues exactement une fois par minute de chaque service.

Évidemment, le stockage d’une valeur par minute sur une période de quatre ans nécessitera un espace disque considérable (bien que les RRD ne nécessitent que 8 octets par valeur mesurée). C’est pourquoi, au fil du temps, les données sont compressées. La première compression intervient au bout de 48 heures. À partir de ce moment, une seule valeur sera stockée toutes les cinq minutes. D’autres étapes sont mises en œuvre après 10 jours et 90 jours :

Phase Durée Résolution Valeurs mesurées

1

2 jours

1 minute

2880

2

10 jours

5 minutes

2880

3

90 jours

30 minutes

4 320

4

4 ans

6 heures

5840

La question qui se pose naturellement est la suivante : comment regrouper au mieux cinq valeurs de manière pertinente en une seule ? Pour cela, les fonctions de regroupement — maximum, minimum et moyenne — sont disponibles. Ce qui est pertinent dans la pratique dépend de l'application ou de la vue de la table. Si, par exemple, vous souhaitez effectuer la supervision des fluctuations de température dans un centre de données sur une période de quatre ans, la température maximale enregistrée est probablement la plus intéressante. Pour les taux d’accès d’une application, une moyenne pourrait présenter davantage d’intérêt.

Afin d’obtenir une flexibilité maximale pour les calculs ultérieurs, les RRD de Checkmk sont simplement préréglés pour stocker les trois valeurs à la fois — minimum, maximum et moyenne. Pour chaque niveau de compression et chaque fonction de consolidation, le RRD comprend un mode de stockage de type « anneau » — ce qu’on appelle une archive Round Robin (RRA). Dans la structure standard, il y a 12 RRA. La structure standard de Checkmk nécessite donc 384 952 octets par métrique. Ce chiffre est obtenu en additionnant : 2 880 + 2 880 + 4 320 + 5 840 points de mesure, multipliés par trois fonctions de consolidation, multipliés par 8 octets par valeur mesurée — ce qui donne un total de 382 080 octets exactement. En ajoutant l’en-tête de fichier de 2 872 octets, on obtient la taille finale de 384 952 octets mentionnée ci-dessus.

Une alternative intéressante consisterait, par exemple, à stocker une valeur par minute pendant une année entière. Cette méthode présenterait un petit avantage : les RRD auraient à tout moment la résolution optimale et pourraient ainsi se passer de consolidation, pour ne générer par exemple que des valeurs moyennes. En calculant 365 x 24 x 60 valeurs mesurées, multipliées par 8 octets, on obtient un total de près de 4 Mo exactement par métrique. De cette manière, bien que les RRD aient un besoin de stockage dix fois supérieur, les « E/S disque » sont en réalité réduites ! La raison en est qu’il n’est plus nécessaire de stocker et de mettre à jour douze RRA distincts ; un seul suffit.

9.2. Personnalisation de la structure RRD

CEE Si le schéma de stockage prédéfini ne vous convient pas, il peut être modifié via des jeux de règles (et il est même possible d’avoir des versions différentes par ordinateur hôte ou par service). Le jeu de règles requis se trouve très facilement via la recherche de règles — c’est-à-dire le menu «Setup » — et une fois là, il suffit de saisir «RRD ». Vous y trouverez le jeu de règles « Configuration of RRD databases of services ». Il existe également un jeu de règles similaire pour les ordinateurs hôtes, mais les ordinateurs hôtes ne disposent de valeurs mesurées que dans des cas exceptionnels. L'image ci-dessous montre la règle RRD avec ses paramètres par défaut :

Rule settings for an RRD.

Sous « Consolidation functions » et « RRA configuration », vous pouvez définir et configurer le nombre et la taille des phases de compression prêtes à être utilisées par les consolidations. Le champ « Step (precision) » définit la résolution en secondes, et en règle générale, elle est de 60 secondes (une minute). Pour les services dont l’intervalle de vérification est inférieur à une minute, il peut être judicieux de réduire cette valeur. Notez toutefois que la valeur du champ « Number of steps aggregated into one data point » ne représentera plus des minutes, mais l’intervalle de temps défini dans « Step (precision) ».

Toute modification apportée à la structure des RRD n’affecte initialement que les RRD nouvellement créés, c’est-à-dire les ordinateurs hôtes ou les services récemment intégrés à la supervision. Vous pouvez également autoriser Checkmk à restructurer les RRD existants. Cette opération s’effectue à l’aide de l’instruction cmk-convert-rrds, pour laquelle l’option -v (verbose) est toujours disponible. Checkmk inspectera alors tous les RRD existants et les restructurera si nécessaire selon le format cible défini.

Important

Pour garantir l'intégrité des données contenues dans les RRD, arrêtez toujours votre instance (avec omd stop) avant de convertir les RRD existants avec cmk-convert-rrds.

OMD[mysite]:~$ cmk-convert-rrds -v
myserver012:
   Uptime (CMC).....converted, 376 KB -> 159 KB
   Filesystem / (CMC).....converted, 1873 KB -> 792 KB
   OMD mysite apache (CMC).....converted, 14599 KB -> 6171 KB
   Memory (CMC).....converted, 14225 KB -> 6012 KB
   Filesystem /home/user (CMC).....converted, 1873 KB -> 792 KB
   Interface 2 (CMC).....converted, 4119 KB -> 1741 KB
   CPU load (CMC).....converted, 1125 KB -> 475 KB
Copier les instructions dans le presse-papiers
Instruction(s) copiée(s) avec succès dans le presse-papiers !
L'accès en écriture au presse-papiers a été refusé !

L'instruction est suffisamment intelligente pour reconnaître les fichiers RRD qui possèdent déjà la structure souhaitée :

OMD[mysite]:~$ cmk-convert-rrds -v
myserver345:
   Uptime (CMC).....uptodate
   Filesystem / (CMC).....uptodate
   OMD mysite apache (CMC).....uptodate
   Memory (CMC).....uptodate
   Filesystem /home/user (CMC).....uptodate
   Interface 2 (CMC).....uptodate
   CPU load (CMC).....uptodate
Copier les instructions dans le presse-papiers
Instruction(s) copiée(s) avec succès dans le presse-papiers !
L'accès en écriture au presse-papiers a été refusé !

Si le nouveau format présente une résolution plus élevée ou des fonctions de consolidation supplémentaires, les données existantes seront interpolées du mieux possible afin que les RRD contiennent les valeurs les plus significatives possibles. Il est toutefois évident que si, par exemple, au lieu de 2 jours, vous avez désormais besoin de 5 jours avec des valeurs à intervalles d'une minute, la précision des données existantes ne peut pas être augmentée rétroactivement.

9.3. Le format de stockage RRD

CEE La règle décrite ci-dessus comporte un paramètre supplémentaire : « RRD storage format ». Celui-ci vous permet de choisir entre deux méthodes que Checkmk peut utiliser lors de la création des RRD. Le format « One RRD per host/service » (format Checkmk, en abrégé) stocke toutes les métriques d’un ordinateur hôte ou d’un service dans un seul fichier RRD. Cela permet une écriture plus efficace des données sur un disque, de sorte qu’un ensemble complet de métriques puisse toujours être écrit en une seule opération. Ces métriques se trouvent alors dans des blocs de stockage adjacents, ce qui réduit le nombre de blocs devant être écrits sur le disque.

Si vos instances Checkmk ont été créées avec une édition commerciale dans une version antérieure à 1.2.8, vous souhaiterez peut-être vérifier si vos données mesurées ont déjà été converties au format actuel, bien plus efficace. Si les données sont toujours stockées au format PNP, vous pouvez les convertir au format Checkmk en appliquant une règle comme indiqué dans le jeu de règles ci-dessus.

Ici aussi, vous aurez besoin de l'instruction cmk-convert-rrds, et, encore une fois, arrêtez toujours votre instance avant de convertir les RRD existants.

OMD[mysite]:~$ cmk-convert-rrds -v
myhost123:
   Uptime PNP -> CMC..converted.
  WARNING: Duplicate RRDs for stable/Uptime. Use --delete-rrds for cleanup.
   OMD mysite apache PNP -> CMC..converted.
  WARNING: Duplicate RRDs for stable/OMD mysite apache. Use --delete-rrds for cleanup.
   fs_/home/user PNP -> CMC..converted.
  WARNING: Duplicate RRDs for stable/fs_/home/user. Use --delete-rrds for cleanup.
   OMD mysite apache PNP -> CMC..converted.
  WARNING: Duplicate RRDs for stable/OMD mysite apache. Use --delete-rrds for cleanup.
   Memory PNP -> CMC..converted.
...
Copier les instructions dans le presse-papiers
Instruction(s) copiée(s) avec succès dans le presse-papiers !
L'accès en écriture au presse-papiers a été refusé !

Comme l'indique l'avertissement, Checkmk laisse dans un premier temps les fichiers existants inchangés. Cela vous permet, en cas de doute, de revenir au format de données d'origine, car une conversion dans le sens inverse n'est pas possible. L'option --delete-rrds garantit que cette copie n'est pas créée ou qu'elle est supprimée ultérieurement. Vous pouvez facilement effectuer la suppression manuellement par la suite en utilisant à nouveau l' instruction :

OMD[mysite]:~$ cmk-convert-rrds -v --delete-rrds
Copier les instructions dans le presse-papiers
Instruction(s) copiée(s) avec succès dans le presse-papiers !
L'accès en écriture au presse-papiers a été refusé !

9.4. Le daemon de cache RRD (rrdcached)

Afin de réduire (considérablement) le nombre d’accès en écriture à un disque dur, un service auxiliaire peut être utilisé : le daemon de cache RRD (rrdcached). Il s’agit de l’un des services de l’instance démarrés automatiquement.

Toutes les nouvelles valeurs mesurées pour les RRD sont envoyées depuis le Checkmk Micro Core (éditions commerciales) ou depuis le NPCD (Checkmk Community) vers le rrdcached. Celui-ci n’écrit pas les données directement dans les RRD, mais les conserve plutôt en mémoire principale pour les écrire ultérieurement sous forme de collection dans le RRD correspondant. De cette manière, le nombre d’accès en écriture au disque dur (ou au SAN !) est sensiblement réduit.

Afin qu’aucune donnée ne soit perdue en cas de redémarrage, les mises à jour sont en outre enregistrées dans des fichiers journaux. Il s’agit également d’accès en écriture, mais comme les données sont organisées de manière séquentielle, ils génèrent peu d’E/S.

Pour que le daemon de cache RRD puisse fonctionner efficacement, il a besoin de beaucoup de mémoire principale. La quantité requise dépend du nombre de RRD et de la durée pendant laquelle les données doivent être mises en cache. Ce dernier paramètre peut être défini dans le fichier ~/etc/rrdcached.conf. Le réglage par défaut est un stockage de 7 200 secondes (deux heures) — cette valeur peut être personnalisée par l’utilisateur — plus une plage aléatoire comprise entre 0 et 1 800 secondes. Ce délai aléatoire par RRD évite les écritures « pulsées » et garantit une répartition régulière des E/S dans le temps :

~/etc/rrdcached.conf
# Tuning settings for the rrdcached. Please refer to rrdcached(1) for
# details. After changing something here, you have to do a restart
# of the rrdcached (reload is not sufficient)

# Data is written to disk every TIMEOUT seconds. If this option is
# not specified the default interval of 300 seconds will be used.
TIMEOUT=3600

# rrdcached will delay writing of each RRD for a random
# number of seconds in the range [0,delay). This will avoid too many
# writes being queued simultaneously. This value should be no
# greater than the value specified in TIMEOUT.
RANDOM_DELAY=1800

# Every FLUSH_TIMEOUT seconds the entire cache is searched for old values
# which are written to disk. This only concerns files to which
# updates have stopped, so setting this to a high value, such as
# 3600 seconds, is acceptable in most cases.
FLUSH_TIMEOUT=7200

# Specifies the number of threads used for writing RRD files. Increasing this
# number will allow rrdcached to have more simultaneous I/O requests into the
# kernel. This may allow the kernel to re-order disk writes, resulting in better
# disk throughput.
WRITE_THREADS=4

Appliquez les modifications apportées aux paramètres de ce fichier à l’aide de :

OMD[mysite]:~$ omd restart rrdcached
Stopping rrdcached...waiting for termination....OK
Starting rrdcached...OK
Copier les instructions dans le presse-papiers
Instruction(s) copiée(s) avec succès dans le presse-papiers !
L'accès en écriture au presse-papiers a été refusé !

9.5. Fichiers et répertoires

Voici un aperçu des fichiers et répertoires les plus importants associés aux valeurs mesurées et aux RRD (tous ceux liés au répertoire personnel du site) :

Nom du chemin d'accès Description

~/var/check_mk/rrd

RRD au format Checkmk

~/var/pnp4nagios/perfdata

RRD au format ancien (PNP)

~/var/rrdcached

Fichiers journaux du daemon de cache RRD

~/var/log/rrdcached.log

Fichier journal du daemon de cache RRD

~/var/log/cmc.log

Fichier journal du noyau Checkmk (contient les messages d'erreur concernant les RRD, le cas échéant)

~/etc/rrdcached.conf

Paramètres du daemon de cache RRD


Last modified: Thu, 22 Jan 2026 10:01:04 GMT via commit 90b08c08b
Sur cette page