Java Kafka服务器停止无法在Windows中执行受控关闭

Java Kafka服务器停止无法在Windows中执行受控关闭,java,windows,apache-kafka,Java,Windows,Apache Kafka,嗨 我们正在windows上运行Kafka代理,并试图实现代理的正常关闭。按照建议,我们运行了kafka-server-stop.bat。这确实扼杀了卡夫卡经纪人,但这似乎是突然终止,而不是受控关闭。我得出的结论是关机不优雅的原因是因为没有关机日志 有趣的是,如果我只在kafka代理控制台上按ctr+C,它确实会通过这样的日志优雅地关闭,而不是运行kafka server stop- [2017-12-04 14:53:30,176] INFO [Kafka Server 1], shuttin

我们正在windows上运行Kafka代理,并试图实现代理的正常关闭。按照建议,我们运行了kafka-server-stop.bat。这确实扼杀了卡夫卡经纪人,但这似乎是突然终止,而不是受控关闭。我得出的结论是关机不优雅的原因是因为没有关机日志

有趣的是,如果我只在kafka代理控制台上按ctr+C,它确实会通过这样的日志优雅地关闭,而不是运行kafka server stop-

[2017-12-04 14:53:30,176] INFO [Kafka Server 1], shutting down (kafka.server.KafkaServer)
[2017-12-04 14:53:30,176] INFO [Kafka Server 1], shutting down (kafka.server.KafkaServer)
[2017-12-04 14:53:30,176] INFO [Kafka Server 1], Starting controlled shutdown (kafka.server.KafkaServer)
[2017-12-04 14:53:30,176] INFO [Kafka Server 1], Starting controlled shutdown (kafka.server.KafkaServer)
[2017-12-04 14:53:30,207] INFO [Kafka Server 1], Controlled shutdown succeeded (kafka.server.KafkaServer)
[2017-12-04 14:53:30,207] INFO [Kafka Server 1], Controlled shutdown succeeded (kafka.server.KafkaServer)
我已经设置好了这些配置-

controlled.shutdown.enable=true
controlled.shutdown.retry.backoff.ms=15000
controlled.shutdown.max.retries=5
还有其他人经历过这种行为吗?受控关闭对我们来说至关重要,因为我们正在这里设置一个动态集群,同一台物理机器可能最终使用不同的代理ID。在没有正确关机的情况下,我们看到来自其他集群的控制器向不在其集群中的机器发送请求时出现了很多问题,等等


谢谢你的帮助

我成功地通过使用。该工具将CONTROL-C发送到控制台,卡夫卡关闭得很整齐。这导致了另一个问题,Windows的重新启动。Zookeeper在卡夫卡之前就终止了,这导致卡夫卡四处寻找Zookeeper,最终被关闭程序杀死。最后,我创建了一个C服务来处理来自Windows()的服务控制关闭前通知。然后,该服务调用一个批处理文件,该批处理文件将按照我希望的顺序对每个服务执行“净停止”(同步)。这样,Kafka服务将在ZooKeeper之前完全停止(使用NSSM CONTROL-C功能)