Elasticsearch is a distributed, RESTful search and analytics engine. This integration installs and configures Telegraf to send Elasticsearch metrics into Wavefront. Telegraf is a light-weight server process capable of collecting, processing, aggregating, and sending metrics to a Wavefront proxy.
In addition to setting up the metrics flow, this integration also installs a dashboard for monitoring an Elasticsearch cluster. Here’s a screenshot of that dashboard:
To see a list of the metrics for this integration, select the integration from https://github.com/influxdata/telegraf/tree/master/plugins/inputs.
Note: If you use vRealize Operations, the application proxy agent sets up the integration for you. See the setup instructions. Otherwise, follow the setup steps on this page.
Step 1. Install the Telegraf Agent
This integration uses the Elasticsearch input plugin for Telegraf. If you’ve already installed Telegraf on your server(s), you can skip to Step 2.
Log in to your Wavefront instance and follow the instructions in the Setup tab to install Telegraf and a Wavefront proxy in your environment. If a proxy is already running in your environment, you can select that proxy and the Telegraf install command connects with that proxy. Sign up for a free trial to check it out!
Step 2. Configure Telegraf Elasticsearch Input Plugin
Create a file called
/etc/telegraf/telegraf.d and enter the following snippet:
[[inputs.elasticsearch]] # ## Specify a list of one or more Elasticsearch servers # ## you can add username and password to your url to use basic authentication: servers = ["http://user:pass@localhost:9200"] # # ## When local is true (the default), the node will read only its own stats. # ## Set local to false when you want to read the node stats from all nodes # ## of the cluster. local = false # # ## Set cluster_health to true when you want to also obtain cluster health stats cluster_health = true # # ## Set cluster_stats to true when you want to also obtain cluster stats from the # ## Master node. cluster_stats = true
false to configure Elasticsearch to return data for all nodes in the cluster. Also, the
Wavefront Elasticsearch dashboard depends on metrics generated by the
so set those booleans to
true as well.
Step 3. Configure Wavefront Telegraf Output Plugin
Edit the Wavefront plugin configuration file at
/etc/telegraf/telegraf.d/10-wavefront.conf to append the following
lines, which define a mapping from text metric values collected by Telegraf from the Elasticsearch cluster health API
to numeric values that can be interpreted by Wavefront.
[[outputs.wavefront.string_to_number.elasticsearch]] green = 1.0 yellow = 0.5 red = 0.0
Step 4. Restart Telegraf
sudo service telegraf restart to restart your agent.