Step 1 - Install Metricbeat

First we need to install Metricbeat.

deb (Debian/Ubuntu)

sudo apt-get install apt-transport-https
wget -qO - | sudo apt-key add -
echo "deb stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-6.x.list

sudo apt-get update && sudo apt-get install metricbeat

rpm (Redhat/Centos)

sudo rpm --import
echo "[elastic-6.x]
name=Elastic repository for 6.x packages
type=rpm-md" | sudo tee /etc/yum.repos.d/elastic-beats.repo

sudo yum install metricbeat

sudo chkconfig --add metricbeat
Step 2 - Locate the configuration file


Step 3 - Configure output

We'll be shipping to Logstash so that we have the option to run filters before the data is indexed.
Comment out the elasticsearch output block.

## Comment out elasticsearch output
#  hosts: ["localhost:9200"]

Uncomment and change the logstash output to match below.

    hosts: ["your-logstash-host:your-port"]
    loadbalance: true
    ssl.enabled: true
Step 4 - Enable the zookeeper module

There are several built in metricbeat modules you can use. To enable the Apache ZooKeeper module run.

metricbeat modules list
metricbeat modules enable zookeeper
Step 5 - Default metrics enabled for zookeeper module

Each module has its own configuration file where different metricsets can be enabled / disabled. Locate the configuration file for the Apache ZooKeeper module.


By default the following metricsets are disabled. To enable or disable a metric simply comment or uncomment the line out.

- module: zookeeper
 # metricsets:
   # - mntr
   # - server
  period: 10s
  hosts: ["localhost:2181"]
Step 6 - Start Metricbeat

Ok, time to start gathering metrics!

sudo systemctl enable metricbeat
sudo systemctl start metricbeat
Step 7 - Compatability

The Apache ZooKeeper metricsets were tested with Apache ZooKeeper 3.4.8 and are expected to work with all versions >= 3.4.0. Versions prior to 3.4 do not support the mntr command.

Ready to get going?

Try our 14 day free trial

No commitment and no catches

Create Free Trial