Monitoring Apache Zookeeper

eG Enterprise offers a special-purpose monitoring model for the Apache Zookeeper to monitor the status and overall performance of the target Apache Zookeeper.

Figure 1 depicts the layer model of an Apache Zookeeper server.

Figure 1 : Layer model for Apache Zookeeper

Every layer in the Figure 1 is mapped to various tests to determine the critical statistics related to the performance of the target Apache Zookeeper. Using the metrics reported by the tests, administrators can find accurate answers for the following performance queries:

  • What is the current state of the target Apache Zookeeper server?
  • How well packets are transmitted from /received by the target Apache Zookeeper server?
  • How many file descriptors are currently open on the server?
  • How many znodes and ephemeral znodes are available?
  • How many followers are available for the server in a Zookeeper ensemble?
  • How many synchronization operations are pending on the target server?
  • How well the CPU and memory resources are utilized by the target Apache Zookeeper?
  • How well packets are received from and transmitted by each client to the target server? Which client has tansmitted/received the maximum number of packets per second?
  • How many requests from each client are queued?
  • How many connections are currently active for each client?
  • What is the maximum number of connections that are allowed for each client?
  • What is the maximum time taken to process the requests received from each client?
  • How many error messages are logged in the log file of the target sever?
  • What is the current size of the log file?
  • What is the growth rate of the log file?

Since the Operating System, Application Processes and TCP layers have been elaborately discussed in Monitoring Unix and Windows Servers document, the tests mapped to the Network Layer have been elaborately discussed in Monitoring Cisco Router document, and the tests mapped to the Zookeeper JVM layer have already been discussed in Monitoring Java Applications document, the sections to come will discuss the other layers in detail.