5.02021-11-21T21:33:23ZTemplatesApp ZookeeperApp Zookeeper## Description
Zookeper Monitoring Need this userparameter in zabbix_agentd.conf: UserParameter=echo2nc[*],echo $1 | nc $2 $3
## Overview
System requirements
-------------------
* [zabbix](http://www.zabbix.com/downloads/) >= 3.4 (preprocessing used by this template)
* [zookeeper](https://zookeeper.apache.org/releases.html) >= 3.4 (mntr stats)
* netcat
Features
--------
* ruok check , mntr stats , graphs, screen
Zabbix Configuration
--------------------
UserParameter=echo2nc[*],echo $1 | nc $2 $3
## Author
Patrick Fouquet
TemplatesZookeeper- zk - $1ZABBIX_ACTIVEecho2nc[mntr,{$ZOO_IP},{$ZOO_PORT}]5m0TEXTZookeeper
- zk - $1ZABBIX_ACTIVEecho2nc[ruok,{$ZOO_IP},{$ZOO_PORT}]0TEXTZookeeper{str(imok)}=0zk - Node is not OKHIGH{ITEM.VALUE}
- zk - $1DEPENDENTzookeeper[Alive Connections]0Number of connections to ZooKeeper that are currently alive.ZookeeperREGEXzk_num_alive_connections\s([0-9]+)
\1echo2nc[mntr,{$ZOO_IP},{$ZOO_PORT}]{last()}=0zk - Node have no alive connectionAVERAGE
- zk - $1DEPENDENTzookeeper[Approximate Data Size]0Bzk_approximate_data_size is the approximate memory consumption for all znodes stored in the ZooKeeper ensembleZookeeperREGEXzk_approximate_data_size\s([0-9]+)
\1echo2nc[mntr,{$ZOO_IP},{$ZOO_PORT}]
- zk - $1DEPENDENTzookeeper[Ephemerals Count]0Number of ephemeral znodes.ZookeeperREGEXzk_ephemerals_count\s([0-9]+)
\1echo2nc[mntr,{$ZOO_IP},{$ZOO_PORT}]
- zk - $1DEPENDENTzookeeper[Latency (avg)]0FLOATsAverage latency between ensemble hostsZookeeperREGEXzk_avg_latency\s([0-9]+)
\1MULTIPLIER0.001echo2nc[mntr,{$ZOO_IP},{$ZOO_PORT}]
- zk - $1DEPENDENTzookeeper[Latency (max)]0FLOATsMaximum latencyZookeeperREGEXzk_max_latency\s([0-9]+)
\1MULTIPLIER0.001echo2nc[mntr,{$ZOO_IP},{$ZOO_PORT}]
- zk - $1DEPENDENTzookeeper[Latency (min)]0FLOATsMinimum latencyZookeeperREGEXzk_min_latency\s([0-9]+)
\1MULTIPLIER0.001echo2nc[mntr,{$ZOO_IP},{$ZOO_PORT}]
- zk - $1DEPENDENTzookeeper[Max File Descriptor Count]0Maximum number of file descriptors allowed for the ZooKeeper process.ZookeeperREGEXzk_max_file_descriptor_count\s([0-9]+)
\1echo2nc[mntr,{$ZOO_IP},{$ZOO_PORT}]
- zk - $1DEPENDENTzookeeper[Open File Descriptor Count]0Number of file descriptors open by the ZooKeeper process.ZookeeperREGEXzk_open_file_descriptor_count\s([0-9]+)
\1echo2nc[mntr,{$ZOO_IP},{$ZOO_PORT}]
- zk - $1DEPENDENTzookeeper[Outstanding requests]0Number of outstanding requests that need to be processed by the cluster.ZookeeperREGEXzk_outstanding_requests\s([0-9]+)
\1echo2nc[mntr,{$ZOO_IP},{$ZOO_PORT}]
- zk - $1DEPENDENTzookeeper[Packets Received / second]0FLOATpacket/sNumber of ZooKeeper network packets received by secondZookeeperREGEXzk_packets_received\s([0-9]+)
\1CHANGE_PER_SECONDecho2nc[mntr,{$ZOO_IP},{$ZOO_PORT}]
- zk - $1DEPENDENTzookeeper[Packets Sent / second]0FLOATpacket/sNumber of ZooKeeper network packets sent by secondZookeeperREGEXzk_packets_sent\s([0-9]+)
\1CHANGE_PER_SECONDecho2nc[mntr,{$ZOO_IP},{$ZOO_PORT}]
- zk - $1DEPENDENTzookeeper[Server State]00TEXTZookeeperREGEXzk_server_state\s(.*)
\1echo2nc[mntr,{$ZOO_IP},{$ZOO_PORT}]{diff()}=1zk - Node State change to {ITEM.VALUE}INFO
- zk - $1DEPENDENTzookeeper[Version]00TEXTZookeeperREGEXzk_version\s(.*)
\1echo2nc[mntr,{$ZOO_IP},{$ZOO_PORT}]
- zk - $1DEPENDENTzookeeper[Watch Count]0Number of watches currently set on the local ZooKeeper process.ZookeeperREGEXzk_watch_count\s([0-9]+)
\1echo2nc[mntr,{$ZOO_IP},{$ZOO_PORT}]
- zk - $1DEPENDENTzookeeper[Znode Count]0zk_znode_count is the total count of znodes stored in the ZooKeeper ensemble. Every time a client creates a new znode, this counter will increment. Every time a client deletes a new znode (either explicitly or by dropping its ephemeral znodes after disconnection), this counter will decrement.ZookeeperREGEXzk_znode_count\s([0-9]+)
\1echo2nc[mntr,{$ZOO_IP},{$ZOO_PORT}]
{$ZOO_IP}127.0.0.1{$ZOO_PORT}2181Zookeeper253zookeeper[Server State]App Zookeeper50010000111000033zookeeper[Version]App Zookeeper50010010111000030LatencyApp Zookeeper50010001110000030Packets / secondApp Zookeeper50010011110000030Actives WatchesApp Zookeeper50010002110000030File Descriptor CountApp Zookeeper50010012110000030ZnodesApp Zookeeper50010003110000030Alive ConnectionsApp Zookeeper50010013110000030Data SizeApp Zookeeper5001000411000003({App Zookeeper:zookeeper[Open File Descriptor Count].last()}/{App Zookeeper:zookeeper[Max File Descriptor Count].last()})>0.8zk - Open File Descriptor near the Max File DescriptorAVERAGEOpen File Descriptor Count: {ITEM.VALUE1}
Max File Descriptor Count: {ITEM.VALUE2}Actives Watches777777- App Zookeeperzookeeper[Watch Count]
Alive ConnectionsGRADIENT_LINE6666FFALL- App Zookeeperzookeeper[Alive Connections]
Data Size1A7C11ALL- App Zookeeperzookeeper[Approximate Data Size]
File Descriptor CountITEMApp Zookeeperzookeeper[Max File Descriptor Count]FILLED_REGION1A7C11- App Zookeeperzookeeper[Max File Descriptor Count]
1FILLED_REGIONF63100- App Zookeeperzookeeper[Open File Descriptor Count]
Latency1A7C11- App Zookeeperzookeeper[Latency (avg)]
1DASHED_LINEF63100- App Zookeeperzookeeper[Latency (max)]
2DASHED_LINE2774A4- App Zookeeperzookeeper[Latency (min)]
Packets / second1A7C11- App Zookeeperzookeeper[Packets Received / second]
1F63100- App Zookeeperzookeeper[Packets Sent / second]
ZnodesDD00DD- App Zookeeperzookeeper[Znode Count]