[IMPROVEMENT REQUEST] Disk Available in Monitoring can be misleading

(Cornoualis) #1

Feature request

Describe the feature: Improve the "Disk Available" value on the main "Monitoring" page, by only counting the free disk space on nodes that have node.data=true in their config.

Elasticsearch version: Version: 5.6.2, Build: 57e20f3/2017-09-23T13:16:45.703Z, JVM: 1.8.0_131

Plugins installed: [x-pack]

JVM version : 1.8.0_131

OS version : RHEL7

Description of the problem including expected versus actual behavior:

The "Disk Available" value on the main "Monitoring" page displays the sum of free disk space on all the nodes in the cluster, even if those nodes don't have the node.data setting to 'true'. The resulting value could be misleading.

Example: This morning, I had a red cluster state, caused by shards that couldn't be allocated because of no disk space left...and at this moment, the "Disk Available" value was 20% (because I have several non data nodes included in that value).

Thanks in advance!

(Marius Dragomir) #2

It makes sense to me, I will log an ER for this. But can confirm first that you're only talking about the value in the main Monitoring page? I can see each node's free disk space in the Nodes page.

(Cornoualis) #3

Hi Marius,
Yes, I'm only takling about the value in the main monitoring page (the one you have when you click on the "Monitoring" button on the left).

Many thanks for the ER!

(Tim Sullivan) #4

Hi, all of the metrics in the Elasticsearch panel of the cluster overview come from the _cluster/stats API from Elasticsearch. You can see the reference of that here: https://www.elastic.co/guide/en/elasticsearch/reference/current/cluster-stats.html. The disk available metric is cluster_stats.nodes.fs.free_in_bytes data from the response. There would need to be a change in Elasticsearch to filter the calculation based on nodes with node.data=true, to have it shown the way you want in the Monitoring UI.

There also is a disk available metric per-node, which comes from the _nodes/stats API: https://www.elastic.co/guide/en/elasticsearch/reference/current/cluster-nodes-stats.html

The data you are interested in is all in the .monitoring-es-* indices, but since this is a niche need, it would be best if you created your own visualization in Kibana using .monitoring-es-* as an index pattern. It wouldn't exactly be easy to make a filter for node.data=true, since that info is not in the data, but you could do filters based on node ID, node name or maybe node transport_address if those are unique.

(Cornoualis) #5

Thank you Tim, I'll do it this way!

(system) #6

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.