2016-06-06 6 views
0

Я хочу получить оповещение в почте, когда процесс Apache Kafka и Apache Zookeeper будет остановлен, и когда он остановится, он автоматически перезапустит оба из них. Ни Apache Kafka, ни Apache Zookeeper не создают никакого pid-файла, и он не подпадает под сценарий инициализации.Monit With Kafka

Мои файлы управления MONIT для Apache Zookeeper и Apache Кафки определен ниже

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 [email protected] 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 [email protected] with reminder on 500 cycles 

Когда я перезагрузить и запустить Monit, он дает ошибку процесса «Кафка» не работает и процесс «зоопарка» не Бег.

Пожалуйста, помогите мне, как перезапустить процесс Кафки и Zookeeper и получить уведомление почты

+0

Что ошибка вы получаете в лог-файле Monit? –

ответ

0

Прежде всего, это «соответствие», а не «матч».

Во-вторых, ваш шаблон регулярного выражения не будет работать. Вы можете проверить шаблон с помощью

monit procmatch "regex-pattern"

Это скажет вам, если согласующих работ.

В-третьих, используйте «start program», «stop program» для запуска/остановки kafka.

Вот пример моего Monit:

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 [email protected] with reminder on 500 cycles