blob: 879dd433cbbb3db76bb430a634dcdd5c55e34d3f [file] [log] [blame]
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
DAEMON="kafka-server"
DESC="Kafka Server"
EXEC_PATH="/usr/lib/kafka/bin/kafka-server-start.sh"
SVC_USER="kafka"
WORKING_DIR="/var/lib/kafka"
DAEMON_FLAGS=""
CONF_DIR="/etc/kafka/conf"
PIDFILE="/var/run/kafka/${DAEMON}.pid"
PRIORITY=86
DEFAULTS_DIR="/etc/default/kafka"
generate_start() {
cat <<'__EOT__'
start() {
[ -x $EXE_FILE ] || exit $ERROR_PROGRAM_NOT_INSTALLED
log_success_msg "Starting $DESC (${DAEMON}): "
checkstatusofproc
status=$?
if [ "$status" -eq "$STATUS_RUNNING" ]; then
log_success_msg "${DESC} is running"
exit 0
fi
LOG_FILE=/var/log/kafka/${DAEMON}.out
export LOG_DIR=`dirname $LOG_FILE`
echo "Starting $desc (kafka-server): "
if [ -z "$KAFKA_JAVA_OPTS" ]; then
JAVA_OPTS="-Xmx512M -server -Dlog4j.configuration=file:$CONF_DIR/log4j.properties"
fi
su -s /bin/bash $SVC_USER -c "nohup $EXEC_PATH $CONF_DIR/server.properties > $LOG_FILE 2>&1 < /dev/null & "'echo $! '"> $PIDFILE"
sleep 3
checkstatusofproc
RETVAL=$?
if [ $RETVAL -eq $STATUS_RUNNING ]; then
touch $LOCKFILE
log_success_msg "Starting $DESC (${DAEMON}): "
else
log_failure_msg "Failure to start $DESC (${DAEMON}). Return value: $RETVAL"
fi
return $RETVAL
}
__EOT__
}
generate_stop() {
cat <<'__EOT__'
stop() {
checkstatusofproc
if [ "$?" = "$STATUS_RUNNING" ] ; then
if [ -f $PIDFILE ]; then
PID=`cat $PIDFILE`
if [ -n $PID ]; then
kill -TERM $PID &>/dev/null
fi
fi
RETVAL=$?
else
RETVAL=$RETVAL_SUCCESS
fi
if [ $RETVAL -eq $RETVAL_SUCCESS ]; then
rm -f $LOCKFILE $PIDFILE
log_success_msg "Stopped ${DESC}: "
else
log_failure_msg "Failed to stop ${DESC}. Return value: $RETVAL"
fi
return $RETVAL
}
__EOT__
}