Tools for instance and cluster state diagnosis

As we saw in the previous chapter, ElasticSearch exposes a lot of information about both machines and search usage. This lets us build monitoring applications as well as applications that show usage or other available statistics. There are many tools we can use for monitoring our cluster state. In this chapter we will only slightly touch the top of the pile of information about such applications, but we strongly advise you to get familiar with some of them as they can make your everyday work with ElasticSearch easier.

The first three tools are available as ElasticSearch plugins and present various information from ElasticSearch using JavaScript and AJAX techniques. Data is fetched periodically from the cluster, prepared for visualization on the browser side, and shown to the user.

Bigdesk

This tool allows us to track statistics on a particular node. The browser can present information up to the last one hour. The following screenshot shows the graphical user interface from Bigdesk:

Bigdesk

As you can see in the presented screenshot, we have information about the name of the cluster, number of nodes, and its health. We can also see which node we are looking at and some statistics about the node, which include the memory usage (both heap and non-heap), number of threads, Java virtual machine garbage collector work, and so on.

In order to install Bigdesk, one should just run the following command:

bin/plugin -install lukas-vlcek/bigdesk

After that, the GUI will be available at http://localhost:9200/_plugin/bigdesk/.

elasticsearch-head

This tool can show the shard placement for every index and node. In addition, it provides an index browser and a tool for building queries. You can also run several commands such as alias creation or deletion of indices. Many operations, using this tool in its current form, will only give you a raw JSON format response from the ElasticSearch server.

The following screenshot shows the graphical user interface of this tool:

elasticsearch-head

The main page of the elasticsearch-head gives us graphical information about the allocation of each of the index primary shards and replicas. We can also see some basic statistics for each index such as the size and number of the document. Also, the cluster health is visible.

In order to install elasticsearch-head, one should just run the following command:

bin/plugin -install mobz/elasticsearch-head

After that, the GUI will be available at http://localhost:9200/_plugin/head/.

elasticsearch-paramedic

elasticsearch-paramedic is another tool that lets us see up to 15 minutes of server statistics, cluster state information, and a clean view of the most important parameters as a chart. It also presents the information about shard placement.

The following screenshot shows the graphical user interface of elasticsearch-paramedic:

elasticsearch-paramedic

As you can see in the elasticsearch-paramedic screenshot, we have the information about all the shards, the cluster name, and health. In addition to that, the current CPU usage is shown, heap memory, opened HTTP connections, indexing, and querying statistics. You can also see information about each node, such as its identifier, IP address, host name, stored indices and many more things.

In order to install elasticsearch-paramedic, one should just run the following command:

bin/plugin -install karmi/elasticsearch-paramedic

After that, the GUI will be available at http://localhost:9200/_plugin/paramedic/index.html.

SPM for ElasticSearch

This tool presents a different approach than the previously mentioned tools. SPM is a Software as a Service (SaaS) solution created for monitoring ElasticSearch installations of any size and allows monitoring several clusters.

Information is sent by simple client software installed on the ElasticSearch machine to SPM servers. The main advantage is the possibility of storing information for a wider range of time and seeing what was happening in the past.

The following screenshot shows the dashboard of SPM for ElasticSearch:

SPM for ElasticSearch

The dashboard shown in the screenshot provides information about cluster nodes, request rate and latency, number of documents in the indices, CPU usage, load, memory details, Java virtual machine memory, disk space usage, and finally network traffic. You can get detailed information about each of those elements by going into the tab dedicated to it.

You can find additional information about SPM installation and configuration available at http://sematext.com/spm/index.html.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset