我正在试验卡夫卡。我能够获得一个基本的集群,其中包含Zookeeper和运行并生成/使用数据的代理。 Kafka是否有交互式管理shell / cli? 我希望有一个关于所有主题的视图,一个主题的分区,产生/消费率,持久化数据等等。 我在网上搜索并查看了安装。我找不到任何管理工具。
谢谢,
答案 0 :(得分:6)
有Kafka Web Console和Kafka Offset Monitor。 Kafka Web控制台可能没有您想要的所有内容,但将来它将包含您所要求的内容。
答案 1 :(得分:0)
Kafka指标可能会通过JMX公开,并在jconsole
中进行了探讨。
在每个代理上,在Linux / MacOS上的kafka-server-start.sh
中的某处添加以下行:
export JMX_PORT=9999
Windows上的或kafka-server-start.bat
:
set JMX_PORT=9999
请注意,大多数JMX指标都会公开本地代理的状态,因此您必须同时连接到所有代理以获得全局。因此,将必要的JMX指标导出到您选择的监控系统(Ganglia / Graphite / Nagios /等)会更方便。
答案 2 :(得分:0)
有几种OSS社区工具可用,具体取决于您的需求,但您可能需要使用多种工具(没有一个工具可以包罗万象),具体取决于您的监视和可观察性需求,以及您是否满意CLI工具或追求基于Web或桌面的工具。这里有一些:
CLI工具
$KAFKA_HOME/bin
中拥有的工具,例如kafka-console-consumer.sh
(用于阅读本主题),以及其他工具,例如kafka-topics.sh
和kafka-configs.sh
,用于管理任务。基于Web的工具
台式机工具
答案 3 :(得分:0)
在工作中,我们使用Kafdrop 3查看经纪人信息,浏览主题和消费者滞后。 Kafdrop 3的主要原因是因为我们将Kafka锁定在生产中,并且所有生产者和消费者都位于Kubernetes集群中。我们无法在我们的开发机上访问Kafka(端口未暴露于外界)。因此,我们在K8s集群中运行Kafdrop,并使用kubectl proxy
对其进行代理。
Burrow所提供的消费者滞后功能并不复杂,但可能已经足够好了,特别是考虑到它是在一个工具中。
如果您希望使用CLI环境中的消息,建议尝试Kafkacat。虽然它并不与Kafka发行版捆绑在一起,但是下载和构建它的努力绝对值得。 (我上次尝试时,您必须自己构建,这只需要运行make
。)我们使用Kafka的 headers 功能,具有讽刺意味的是,捆绑工具不支持-但支持Kafdrop 3和Kafkacat等社区工具以及支持Kafka Tool 的商业工具。