在對Kafka in supervisor mode做出回答之後,我試圖做同樣的事情。事情是,我的卡夫卡(版本0.8.1.1)似乎包裝不同的運行腳本。所以,我曾試圖去適應併產生了以下supervisord配置:kafka 0.8.1.1在監督下(supervisord)在停止supervisord守護進程時不會被殺死
[program:kafka]
command=pidproxy /var/run/kafka.pid /opt/kafka/bin/kafka-server-start.sh /opt/kafka/config/server.properties
user=kafka
autostart=true
autorestart=true
startsecs=10
startretries=999
log_stdout=true
log_stderr=true
logfile=/var/log/kafka/supervisord-kafka.out
logfile_maxbytes=20MB
logfile_backups=10
我用主管的以下rpm:
[[email protected] yyy]# rpm -qi supervisor
Name : supervisor Relocations: (not relocatable)
Version : 3.0 Vendor: obs://build.opensuse.org/home:presbrey
Release : 13.1 Build Date: Thu 13 Jun 2013 08:35:40 AM IDT
回採的supervisord守護進程不殺死卡夫卡見下圖:
[[email protected] yyy]# jps
3236 core
31378 QuorumPeerMain
31408 Jps
2964 Kafka
31293 supervisor
31246 nimbus
[[email protected] yyy]# supervisorctl status
kafka RUNNING pid 2963, uptime 1 day, 5:15:18
storm-nimbus RUNNING pid 31246, uptime 0:02:06
storm-supervisor RUNNING pid 31293, uptime 0:01:44
storm-ui RUNNING pid 3236, uptime 5 days, 22:37:33
storm-zookeeper RUNNING pid 31378, uptime 0:00:47
[[email protected] yyy]# service supervisord stop
Stopping supervisord: Shut down
Waiting roughly 60 seconds for /var/run/supervisord.pid to be removed after child processes exit
Supervisord exited as expected in under 12 seconds
[[email protected] yyy]# supervisorctl status
unix:///var/tmp/supervisor.sock no such file
[[email protected] yyy]# jps
2964 Kafka
31474 Jps
你可以嘗試添加'stopasgroup = true'到主管的kafka部分,看看這是否有效? –
非常感謝!你想添加它作爲答案,所以我可以upvote和標記? – Yaneeve