Surveillance d'Elasticsearch

Surveillez les performances de votre cluster Elasticsearch en connaissant l'état du cluster, les détails des nœuds et des fragments, les statistiques de JVM, etc.

Installez et configurez le plug-in Elasticsearch pour surveiller le moteur de recherche et de stockage de documents distribué et open source. Il dépend fortement d'Apache Lucene, un moteur de recherche plein texte en Java. Gardez un œil sur les performances de l'environnement Elasticsearch pour vous assurer que vous êtes à jour au niveau des éléments internes de votre cluster de travail.

Ce document explique en détail comment configurer le plug-in Elasticsearch et les paramètres de surveillance pour fournir une visibilité approfondie des performances, de la disponibilité et des statistiques d'utilisation des clusters Elasticsearch.

Indicateurs de performance

Fragments actifs

The active_shards indicates the number of primary shards in your cluster. This is an aggregate total across all indices.

Initialisation de fragments

The initializing_shards is the number of shards that are being freshly created.

Nombre de nœuds/nœuds de données

The number of nodes/data nodes in the cluster is represented by the metric number_of_nodes and number_of_data_nodes respectively. Data nodes hold data and perform data related operations such as CRUD, search and aggregations.

Relocalisation des fragments

The relocating_shards is the number of shards that are currently moving from one node to another node.

Fragments principaux actifs

The active_primary_shards is an aggregate total of all shards across all indices, including replica shards.

Fragments non affectés

From the initializing position, the shards move to a state of unassigned, as the master node starts to assign shards to the nodes in the cluster. The unassigned_shards exist in the cluster state, but can’t be found in the cluster itself. Being in the unassigned position for a long time could be a warning for an unstable cluster.

État du cluster

L'état du cluster est représenté comme suit : Rouge : 0, Vert : 1 et Jaune : 2. Un état du cluster vert signifie que tous les fragments primaires et de réplique sont alloués. Un état jaune indique qu'au moins un fragment de réplique est non alloué ou manquant. Si l'état du cluster est rouge, cela signifie qu'un ou plusieurs fragments principaux n'ont pas été affectés.

Indicateurs JVM

Elasticsearch runs on Java Virtual Machine (JVM) and one of the ways through which it uses the RAM on your nodes is via JVM heap. The metric jvm_mem_pool_old_used_perc is the average of each node's JVM memory usage (in percentage) of old generation in the Garbage Collection (GC). Metrics jvm_gc_old_coll_time and jvm_gc_old_coll_count give the GC time (in milli seconds) and count of old generation in all the nodes since last poll (5 minutes by default).

Utilisation de la mémoire et du processeur

As Elasticsearch depends on the machine it is installed, it is critical to monitor CPU and memory usage. Monitoring CPU usage for each of your node types help in studying the distribution of workload between the nodes. Metrics including free (mem_free), used (mem_used), shared (shared_mem), resident (resident_mem), total virtual memory (virtual_mem) help to keep an eye on memory usage and understand how it loads and impacts the cluster.

Conditions préalables

  • Assurez-vous qu'Elasticsearch est installé sur le serveur et qu'il est opérationnel.
  • Lors de l'installation du plug-in Elasticsearch, créez un fichier JSON « counter.json » vide sous le répertoire « elasticsearch ».
  • Notre agent de surveillance du serveur Linux doit être installé sur le réseau ou sur l'hôte spécifique où le cluster Elasticsearch est exécuté.
  • Lors de l'ajout d'un plug-in, le nom du plug-in et son nom de dossier doivent être identiques.

Installation du plug-in

  • Téléchargez et installez la dernière version de l'agent Linux de Site24x7 sur le serveur sur lequel vous prévoyez d'exécuter le plug-in. S'il est installé avec succès, vous verrez un moniteur de serveur Linux dans le panneau de configuration Site24x7. Cela confirme que l'agent est en mesure de communiquer avec notre centre de données.
  • Selon vos besoins, téléchargez les plug-ins elastisearch depuis notre référentiel GitHub : elasticsearch.py, elasticsearchcluster.py ou elasticsearchnodes.py.
  • Modifiez les valeurs HOST, USERNAME, PORT et PASSWORD en fonction de vos configurations. Par défaut, le proxy n'est pas configuré. Vous pouvez également exécuter plusieurs configurations à l'aide d'un seul script de plug-in. Pour ce faire, téléchargez le fichier de configuration, par exemple le fichier elasticsearch.cfg du plug-in Elasticsearch dans notre référentiel GitHub et fournissez les configurations de votre cluster elasticsearch.
  • Créez un dossier portant le nom « elasticsearch » ou « elasticsearchcluster » ou « elasticsearchnodes », sous le répertoire des plug-ins de l'agent Linux de Site24x7 « /opt/site24x7/monagent/plugins/ », et placez les fichiers du plug-in respectifs dans leurs dossiers respectifs.
  • Pour le plug-in elasticsearch, créez un fichier JSON vide, « counter.json » et placez-le sous « /opt/site24x7/monagent/plugins/elasticsearch ».
L'agent exécute automatiquement le plug-in dans un délai de cinq minutes et envoie les données de performances au centre de données Site24x7.
Conseil

Manually execute the plugin script using the following command and verify its output:

python elasticsearch.py

Afficher les données dans le client Web de Site24x7

  1. Connectez-vous à Site24x7 et accédez à Serveur > Intégrations de plug-ins > et cliquez sur le moniteur de plug-in.
  2. Vous pourrez afficher les graphiques de performances sur les différents indicateurs de votre cluster Elasticsearch.

Contribution du plug-in

N'hésitez pas à contribuer à notre plug-in existant et à faire des suggestions ou des commentaires sur notre communauté.

Autres intégrations de plug-ins