In a previous post, we covered how to use site plugins to monitor Elasticsearch. These plugins were extremely popular up until the release of Elasticsearch 5 and were used mainly for index monitoring and management.
And then, in version 5, something broke. Site plugins became obsolete — the main reason being, as Elastic explained, security. Being able to serve static web content opened up Elasticsearch to vulnerabilities that, understandably, needed to be shut down.
However, all is not lost.
Some of the plugins have workarounds, and with some extra configuration, they can be installed and used for monitoring and administering your Elasticsearch clusters and indices.
The question is of course — which ones? Which plugins are compatible with version 5?
Since I have found no official documentation listing Elasticsearch community plugins — or any other available resource on the Web, for that matter — here is a brief summary of the state of Elasticsearch monitoring site plugins:
|Works in Elasticsearch 2?||Works in Elasticsearch 5?||Notes|
|Yes||Yes, but with missing functionality. See existing forks for support.||No longer maintained (see Cerebro below).|
|Yes||Yes||See here for why Cerebro was developed.|
|Yes||Yes||Supports Docker installation and as a standalone server.|
|Yes||No||Work in progress to support version 5.x.|
|Yes||No||Relatively inactive project.|
You could monitor Elasticsearch from within Kibana, for instance. We at Logz.io have explored — and used — a variety of different options for monitoring Elasticsearch with Graphite and Prometheus. Both of these time-series backends can be easily tied in with Grafana as the visualization layer, and if tweaked correctly, they can give you nice visibility into how your Elasticsearch clusters are performing.
Happy cluster managing!