Acttully, I found out that there are 3 process that are created when
running:
/opt/kafka/bin/kafka-server-**start.sh /etc/kafka/server.properties
guyd 4883 4658 0 09:36 pts/5 00:00:00 /bin/bash
./kafka-server-start.sh ../config/server.properties
guyd 4885 4883 0 09:36 pts/5 00:00:00 /bin/bash ./kafka-run-class.sh
kafka.Kafka ../config/server.properties
guyd 4887 4885 2 09:36 pts/5 00:00:00 java -Xmx512M -server
-Dlog4j.configuration=file:./../config/log4j.properties
-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.port=9999 -cp
:./../project/boot/scala-2.8.0/lib/scala-compiler.jar:./../project/boot/scala-2.8.0/lib/scala-library.jar:./../core/target/scala_2.8.0/kafka-0.7.0.jar:./../core/lib/zkclient-20110412.jar:./../core/lib_managed/scala_2.8.0/compile/jopt-simple-3.2.jar:./../core/lib_managed/scala_2.8.0/compile/log4j-1.2.15.jar:./../core/lib_managed/scala_2.8.0/compile/zookeeper-3.3.3.jar
kafka.Kafka ../config/server.properties
Why do we need these 3 processes?
On 07/08/2012 09:35 AM, Guy Doulberg wrote:
Hi Jay,
Thanks for your replay.
Not exactly,
I can see that the pid the runit save, is deferent from the pid that I
acctually have running on the machine , could it be that the launcher of
the kafka broker forks another process with a different PID?
Thanks.
The only way I could kill the process is by using kill -9 , I suspect
that runit doesn't use the
On 07/05/2012 10:19 PM, Jay Kreps wrote:
I think what you are saying is that you don't have the process id for the
broker so you don't have the right thing to kill?
Two solutions I know:
1. Change your script to store the process id somewhere, and use that for
the kill
2. Use pkill and just kill all kafka instances (only works if there is only
one broker per node)
-Jay
On Thu, Jul 5, 2012 at 2:24 AM, Guy Doulberg <guy.doulb...@conduit.com>wrote:
Hi guys,
In my deployment of Kafka I am using runit to control the service of the
kafka broker.
In the run script I have this line:
#!/bin/sh
exec 2>&1
exec /opt/kafka/bin/kafka-server-**start.sh /etc/kafka/server.properties
It works fine, if I want to start the broker, but if I want to stop or
restart the process, the kafka broker doesn't get kill...
So eventually the old kafka broker prevents from the new broker to start
(Because the ports are already binded).
Of course the running the same line of code in the shell and then ctrl-c
ing works good (as you know kafka broker is not a daemon)
I was wondering if someone has encountered this phenomena and solved it.
Thanks,
Guy Doulberg