当Apache Kafka和Apache Zookeeper进程停止时,我希望在邮件中收到警报,当它停止时,它会自动重启它们。 Apache Kafka和Apache Zookeeper都没有创建任何pid文件,也没有在init脚本下。
Apache Zookeeper和Apache Kafka的我的monit控制文件定义如下
check process zookeeper match "config/zookeeper.properties"
if not exist then exec "/Users/xxxx/kafka_2.10-0.9.0.1/bin/zookeeper-server-start.sh -c -d config/zookeeper.properties" and alert xxxx@gmail.com with reminder on 500 cycles
check process kafka match "config/server.properties"
if not exist then exec "/Users/xxxx/kafka_2.10-0.9.0.1/bin/kafka-server-start.sh -c -d config/server.properties" and alert xxxx@gmail.com with reminder on 500 cycles
当我重新加载并启动monit时,它会出现'kafka'进程未运行并且'zookeeper'进程未运行的错误。
请帮助我如何重新启动Kafka和Zookeeper进程并获取邮件提醒
答案 0 :(得分:1)
首先,它是“匹配”,而不是“匹配”。
其次,你的正则表达式模式不起作用。您可以使用
测试模式 monit procmatch "regex-pattern"
这将告诉您匹配是否有效。
第三,使用“启动程序”,“停止程序”来启动/停止kafka。
以下是我的监控示例:
check process kafka matching "java -Xmx1G.*kafka"
start program "/bin/bash -c 'cd /usr/local/xxx/kafka_2.10-0.8.2.1/; bin/kafka-server-start.sh config/server.properties &'"
stop program "/bin/bash -c 'cd /usr/local/xxx/kafka_2.10-0.8.2.1/; bin/kafka-server-stop.sh'"
alert xxxx@gmail.com with reminder on 500 cycles