-
Notifications
You must be signed in to change notification settings - Fork 2
/
kafka-server
executable file
·103 lines (82 loc) · 2.13 KB
/
kafka-server
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
#!/bin/bash
### BEGIN INIT INFO
# Provides: kafka-server
# Required-Start: $remote_fs $network
# Required-Stop: $remote_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Startup script for Kafka server
# Description: Kafka is a high-throughput distributed messaging system.
### END INIT INFO
#
# /etc/init.d/kafka-server
#
# Startup script for kafka-server
#
# chkconfig: 2345 20 80
# description: Starts and stops kafka-server
#
# this script based on: https://github.com/nmilford/specfiles/blob/master/kafka-0.7/kafka-server
#
. /lib/lsb/init-functions
SCALA_VERSION="2.9.2"
desc="Kafka (kafka-server)"
if [ -f /etc/sysconfig/kafka ]; then
. /etc/sysconfig/kafka
fi
start() {
echo "Starting $desc: "
for file in $KAFKA_HOME/project/boot/scala-$SCALA_VERSION/lib/*.jar; do
CLASSPATH=$CLASSPATH:$file
done
for file in $KAFKA_HOME/core/target/scala_$SCALA_VERSION/*.jar;do
CLASSPATH=$CLASSPATH:$file
done
for file in $KAFKA_HOME/core/lib/*.jar;do
CLASSPATH=$CLASSPATH:$file
done
for file in $KAFKA_HOME/perf/target/scala_$SCALA_VERSION/kafka*.jar; do
CLASSPATH=$CLASSPATH:$file
done
for file in $KAFKA_HOME/core/lib_managed/scala_$SCALA_VERSION/compile/*.jar; do
if [ ${file##*/} != "sbt-launch.jar" ]; then
CLASSPATH=$CLASSPATH:$file
fi
done
if [ -z "$JAVA_OPTS" ]; then
JAVA_OPTS="-Xmx512M -server -Dlog4j.configuration=file:$KAFKA_CONF/log4j.properties"
fi
if [ -z "$JAVA_HOME" ]; then
JAVA="java"
else
JAVA="$JAVA_HOME/bin/java"
fi
su $KAFKA_USER -c "nohup $JAVA $JAVA_OPTS -cp $CLASSPATH kafka.Kafka $KAFKA_CONF/server.properties >>$KAFKA_OUT 2>&1 &"
RETVAL=$?
return $RETVAL
}
stop() {
echo "Shutting down $desc: "
pkill -f kafka.Kafka
}
restart() {
stop
start
}
status() {
pid=$(pgrep -f kafka.Kafka)
if [ -z $pid ]; then
echo "kafka-server is NOT running."
else
echo "kafka-server is running (pid is $pid)."
fi
}
case "$1" in
start) start;;
stop) stop;;
restart) restart;;
status) status;;
*) echo "Usage: $0 {start|stop|restart}"
RETVAL=2;;
esac
exit $RETVAL