Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update shell scripts #64

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
60 changes: 28 additions & 32 deletions manager/manager-bin/start_manager.sh
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#bin/bash
#!/usr/bin/env bash

# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
Expand All @@ -18,62 +18,57 @@
# under the License.

echo "Get manager home path"
curdir=`dirname "$0"`
curdir=`cd "$curdir"; pwd`

export MANAGER_HOME=`cd "$curdir"; pwd`
MANAGER_HOME=$(dirname "$(readlink -f "$0")")
echo "$MANAGER_HOME"

export LOG_DIR="$MANAGER_HOME/../logs"
pidfile="$MANAGER_HOME"/../bin/doris_manager.pid

LOG_DIR="$MANAGER_HOME"/../logs

echo "Make log dir"
# make log path
# Create log path
# need check and create if the log directory existed before outing message to the log file.
if [ ! -d $LOG_DIR ]; then
mkdir -p $LOG_DIR
if [[ ! -d "$LOG_DIR" ]]; then
mkdir -p "$LOG_DIR"
fi
echo "$LOG_DIR"

echo "Read config"
while read line; do
envline=`echo $line | sed 's/[[:blank:]]*=[[:blank:]]*/=/g' | sed 's/^[[:blank:]]*//g' | egrep "^[[:upper:]]([[:upper:]]|_|[[:digit:]])*="`
envline=`eval "echo $envline"`
while read -r line; do
envline=$(echo "$line" | sed 's/[[:blank:]]*=[[:blank:]]*/=/g' | sed 's/^[[:blank:]]*//g' | grep -E "^[[:upper:]]([[:upper:]]|_|[[:digit:]])*=")
envline=$(eval "echo $envline")
if [[ $envline == *"="* ]]; then
eval 'export "$envline"'
fi
done < $MANAGER_HOME/../conf/manager.conf
done <"$MANAGER_HOME"/../conf/manager.conf

echo "config end"

echo "check java and version"
# java
if [ "$JAVA_HOME" = "" ]; then
echo "Error: JAVA_HOME is not set."
exit 1
echo "Error: JAVA_HOME is not set."
exit 1
fi
JAVA=$JAVA_HOME/bin/java

JAVA="$JAVA_HOME"/bin/java
echo "$JAVA"

# get jdk version, return version as an Integer.
# Get jdk version, return version as an Integer.
# 1.8 => 8, 13.0 => 13
jdk_version() {
local result
local java_cmd=$JAVA_HOME/bin/java
local IFS=$'\n'
# remove \r for Cygwin
local lines=$("$java_cmd" -Xms32M -Xmx32M -version 2>&1 | tr '\r' '\n')
if [[ -z $java_cmd ]]
then
if [[ -z $java_cmd ]]; then
result=no_java
else
for line in $lines; do
if [[ (-z $result) && ($line = *"version \""*) ]]
then
if [[ (-z $result) && ($line = *"version \""*) ]]; then
local ver=$(echo $line | sed -e 's/.*version "\(.*\)"\(.*\)/\1/; 1q')
# on macOS, sed doesn't support '?'
if [[ $ver = "1."* ]]
then
if [[ $ver = "1."* ]]; then
result=$(echo $ver | sed -e 's/1\.\([0-9]*\)\(.*\)/\1/; 1q')
else
result=$(echo $ver | sed -e 's/\([0-9]*\)\(.*\)/\1/; 1q')
Expand All @@ -83,18 +78,19 @@ jdk_version() {
fi
echo "$result"
}
# check java version and choose correct JAVA_OPTS
# Check java version and choose correct JAVA_OPTS
java_version=$(jdk_version)
min_version=8

echo "java version is $java_version"

if [ $java_version -lt $min_version ]
then
echo "Java version is too low to start"
exit -1
if [[ "$java_version" -lt $min_version ]]; then
echo "Java version is too low to start"
exit 1
fi

#start manager
nohup $JAVA -jar $MANAGER_HOME/../lib/doris-manager.jar > $LOG_DIR/manager.out 2>&1 </dev/null &
echo "Doris Manager start done"
# Start doris manager
nohup "$JAVA" -jar "$MANAGER_HOME"/../lib/doris-manager.jar >"$LOG_DIR"/manager.out 2>&1 </dev/null &
echo "Doris Manager start done"

echo $! >"$pidfile"
20 changes: 18 additions & 2 deletions manager/manager-bin/stop_manager.sh
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#bin/bash
#!/usr/bin/env bash

# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
Expand All @@ -17,4 +17,20 @@
# specific language governing permissions and limitations
# under the License.

ps -ef|grep doris-manager|grep -v grep|awk '{print $2}'|xargs kill -9
MANAGER_HOME=$(dirname "$(readlink -f "$0")")

cd "$MANAGER_HOME" || exit

pidfile="$MANAGER_HOME"/../bin/doris_manager.pid
echo "$pidfile"

if [[ ! -f $pidfile ]]; then
echo "doris manager has not been started"
exit 1
fi

pid=$(cat "$pidfile")
echo "$pid"

kill -9 "$pid"
rm -f "$pidfile"