<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Kafka ZooKeeper on Netdata</title><link>https://www.netdata.cloud/tags/kafka-zookeeper/</link><description>Recent content in Kafka ZooKeeper on Netdata</description><generator>Hugo</generator><language>en-us</language><atom:link href="https://www.netdata.cloud/tags/kafka-zookeeper/index.xml" rel="self" type="application/rss+xml"/><item><title>Kafka NOT_LEADER_FOR_PARTITION: stale metadata, controller lag, and client retries</title><link>https://www.netdata.cloud/guides/kafka/kafka-not-leader-for-partition/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://www.netdata.cloud/guides/kafka/kafka-not-leader-for-partition/</guid><description>&lt;p&gt;Producers and consumers log &lt;code&gt;NOT_LEADER_FOR_PARTITION&lt;/code&gt;. Broker response metrics show spikes in failed produce or fetch requests. The cluster usually self-heals within seconds as clients refresh metadata. When the error persists for minutes, or flaps across many partitions, the root cause is typically a controller that cannot keep up with leadership changes. Distinguishing a routine leader election from a controller queue backup that blocks metadata propagation is the first step.&lt;/p&gt;&#10;&lt;h2 id="what-this-means"&gt;What this means&lt;/h2&gt;&#10;&lt;p&gt;Kafka clients cache partition leadership metadata. When a leader moves (rolling restart, broker failure, preferred replica election), a client with a stale view sends requests to the previous leader. That broker returns &lt;code&gt;NOT_LEADER_FOR_PARTITION&lt;/code&gt;. The Java client treats this as a retriable error and refreshes metadata eagerly. A short spike during a restart is normal and usually clears immediately.&lt;/p&gt;</description></item><item><title>Kafka ZooKeeper Monitoring</title><link>https://www.netdata.cloud/monitoring-101/kafka_zookeeper-monitoring/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://www.netdata.cloud/monitoring-101/kafka_zookeeper-monitoring/</guid><description>&lt;h2 id="kafka-zookeeper-monitoring"&gt;Kafka ZooKeeper Monitoring&lt;/h2&gt;&#10;&lt;h3 id="what-is-kafka-zookeeper"&gt;What Is Kafka ZooKeeper?&lt;/h3&gt;&#10;&lt;p&gt;Kafka ZooKeeper is a centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services. It is a critical component in the architecture of distributed systems, especially for managing and coordinating services like Apache Kafka.&lt;/p&gt;&#10;&lt;h3 id="monitoring-kafka-zookeeper-with-netdata"&gt;Monitoring Kafka ZooKeeper With Netdata&lt;/h3&gt;&#10;&lt;p&gt;Monitoring Kafka ZooKeeper with Netdata offers a comprehensive view of the system’s performance and health. To monitor Kafka ZooKeeper, Netdata uses an openmetrics (Prometheus) exporter called the &lt;a href="https://github.com/cloudflare/kafka_zookeeper_exporter"&gt;Kafka ZooKeeper Exporter&lt;/a&gt;. This allows Netdata to ingest data from any Prometheus exporter efficiently. With Netdata, you get automated dashboards, alerts, and more without the need for a Prometheus server or Grafana. This streamlined approach with the Netdata $name monitoring tool ensures ease of use and rapid insights into your Kafka ZooKeeper instances.&lt;/p&gt;</description></item><item><title>ZooKeeper "fsync-ing the write ahead log took too long": the disk warning behind most write stalls</title><link>https://www.netdata.cloud/guides/zookeeper/zookeeper-fsync-warning-adversely-affect-latency/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://www.netdata.cloud/guides/zookeeper/zookeeper-fsync-warning-adversely-affect-latency/</guid><description>&lt;p&gt;The warning:&lt;/p&gt;&#10;&lt;pre tabindex="0"&gt;&lt;code&gt;fsync-ing the write ahead log in SyncThread:0 took 1234ms which will adversely effect operation latency...&#10;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;fires when fsync on the transaction log exceeds &lt;code&gt;fsync.warningthresholdms&lt;/code&gt; (default 1000ms). The wording is deliberate: every write in ZooKeeper blocks on a quorum of fsyncs. If fsync takes a second, every write takes a second. If fsync takes 10 seconds, you are one missed heartbeat away from a leader election.&lt;/p&gt;&#10;&lt;p&gt;This is the canary for the failure pattern the playbook calls &amp;ldquo;Disk Sync Deadlock&amp;rdquo;: the single most common cause of ZooKeeper outages, more than GC, more than network. When you see this warning, the bottleneck is almost never ZooKeeper itself. It is the disk under &lt;code&gt;dataLogDir&lt;/code&gt;. The fix is usually storage, not config.&lt;/p&gt;</description></item><item><title>ZooKeeper "X is not executed because it is not in the whitelist": four-letter-word commands blocked</title><link>https://www.netdata.cloud/guides/zookeeper/zookeeper-command-not-in-whitelist/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://www.netdata.cloud/guides/zookeeper/zookeeper-command-not-in-whitelist/</guid><description>&lt;p&gt;The error string is exact. When you run &lt;code&gt;echo mntr | nc localhost 2181&lt;/code&gt; against a ZooKeeper 3.5.3+ server that has not been configured for it, the server replies:&lt;/p&gt;&#10;&lt;pre tabindex="0"&gt;&lt;code&gt;mntr is not executed because it is not in the whitelist.&#10;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Same shape for &lt;code&gt;ruok&lt;/code&gt;, &lt;code&gt;isro&lt;/code&gt;, &lt;code&gt;stat&lt;/code&gt;, &lt;code&gt;conf&lt;/code&gt;, &lt;code&gt;envi&lt;/code&gt;, &lt;code&gt;cons&lt;/code&gt;, &lt;code&gt;wchs&lt;/code&gt;, and the rest of the four-letter-word (4lw) command set. Only &lt;code&gt;srvr&lt;/code&gt; works out of the box, because the bundled &lt;code&gt;zkServer.sh&lt;/code&gt; status check depends on it.&lt;/p&gt;</description></item><item><title>ZooKeeper dataLogDir sharing a disk with snapshots: the #1 fsync-latency footgun</title><link>https://www.netdata.cloud/guides/zookeeper/zookeeper-datalogdir-not-separated/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://www.netdata.cloud/guides/zookeeper/zookeeper-datalogdir-not-separated/</guid><description>&lt;p&gt;You are chasing intermittent ZooKeeper write-latency spikes that appear to have no cause. Average latency is fine most of the time. Then, every few minutes, p99 update latency jumps by an order of magnitude, &lt;code&gt;zk_outstanding_requests&lt;/code&gt; briefly climbs, and clients on tight timeouts see a flicker of connection churn. By the time you SSH in, the cluster looks healthy again.&lt;/p&gt;&#10;&lt;p&gt;The disk is not full, &lt;code&gt;iostat&lt;/code&gt; averages look reasonable, and the spikes do not line up with any obvious workload change. The transaction log and snapshot directory are both on the same volume, and that is exactly the problem.&lt;/p&gt;</description></item></channel></rss>