Skip to content

Commit

Permalink
[FLINK-7098] Adapt startup scripts to start Flip-6 standalone session…
Browse files Browse the repository at this point in the history
… cluster
  • Loading branch information
tillrohrmann committed Jul 5, 2017
1 parent 476239f commit 976450f
Show file tree
Hide file tree
Showing 7 changed files with 38 additions and 14 deletions.
9 changes: 5 additions & 4 deletions flink-dist/src/main/flink-bin/bin/config.sh
Expand Up @@ -464,28 +464,29 @@ readSlaves() {
}

# starts or stops TMs on all slaves
# TMSlaves start|stop
# TMSlaves start|stop [flip6]
TMSlaves() {
CMD=$1
FLIP6=$2

readSlaves

if [ ${SLAVES_ALL_LOCALHOST} = true ] ; then
# all-local setup
for slave in ${SLAVES[@]}; do
"${FLINK_BIN_DIR}"/taskmanager.sh "${CMD}"
"${FLINK_BIN_DIR}"/taskmanager.sh "${CMD}" "${FLIP6}"
done
else
# non-local setup
# Stop TaskManager instance(s) using pdsh (Parallel Distributed Shell) when available
command -v pdsh >/dev/null 2>&1
if [[ $? -ne 0 ]]; then
for slave in ${SLAVES[@]}; do
ssh -n $FLINK_SSH_OPTS $slave -- "nohup /bin/bash -l \"${FLINK_BIN_DIR}/taskmanager.sh\" \"${CMD}\" &"
ssh -n $FLINK_SSH_OPTS $slave -- "nohup /bin/bash -l \"${FLINK_BIN_DIR}/taskmanager.sh\" \"${CMD}\" \"${FLIP6}\" &"
done
else
PDSH_SSH_ARGS="" PDSH_SSH_ARGS_APPEND=$FLINK_SSH_OPTS pdsh -w $(IFS=, ; echo "${SLAVES[*]}") \
"nohup /bin/bash -l \"${FLINK_BIN_DIR}/taskmanager.sh\" \"${CMD}\""
"nohup /bin/bash -l \"${FLINK_BIN_DIR}/taskmanager.sh\" \"${CMD}\" \"${FLIP6}\""
fi
fi
}
Expand Down
4 changes: 4 additions & 0 deletions flink-dist/src/main/flink-bin/bin/flink-console.sh
Expand Up @@ -46,6 +46,10 @@ case $SERVICE in
CLASS_TO_RUN=org.apache.flink.runtime.zookeeper.FlinkZooKeeperQuorumPeer
;;

(standalonesession)
CLASS_TO_RUN=org.apache.flink.runtime.entrypoint.StandaloneSessionClusterEntrypoint
;;

(*)
echo "Unknown service '${SERVICE}'. $USAGE."
exit 1
Expand Down
4 changes: 4 additions & 0 deletions flink-dist/src/main/flink-bin/bin/flink-daemon.sh
Expand Up @@ -50,6 +50,10 @@ case $DAEMON in
CLASS_TO_RUN=org.apache.flink.runtime.webmonitor.history.HistoryServer
;;

(standalonesession)
CLASS_TO_RUN=org.apache.flink.runtime.entrypoint.StandaloneSessionClusterEntrypoint
;;

(*)
echo "Unknown daemon '${DAEMON}'. $USAGE."
exit 1
Expand Down
12 changes: 9 additions & 3 deletions flink-dist/src/main/flink-bin/bin/jobmanager.sh
Expand Up @@ -18,13 +18,19 @@
################################################################################

# Start/stop a Flink JobManager.
USAGE="Usage: jobmanager.sh ((start|start-foreground) (local|cluster) [host] [webui-port])|stop|stop-all"
USAGE="Usage: jobmanager.sh ((start|start-foreground) (local|cluster|flip6) [host] [webui-port])|stop|stop-all [flip6]"

STARTSTOP=$1
EXECUTIONMODE=$2
HOST=$3 # optional when starting multiple instances
WEBUIPORT=$4 # optional when starting multiple instances

JOBMANAGER_TYPE=jobmanager

if [[ "$EXECUTIONMODE" == "flip6" ]]; then
JOBMANAGER_TYPE=standalonesession
fi

if [[ $STARTSTOP != "start" ]] && [[ $STARTSTOP != "start-foreground" ]] && [[ $STARTSTOP != "stop" ]] && [[ $STARTSTOP != "stop-all" ]]; then
echo $USAGE
exit 1
Expand Down Expand Up @@ -76,7 +82,7 @@ if [[ $STARTSTOP == "start" ]] || [[ $STARTSTOP == "start-foreground" ]]; then
fi

if [[ $STARTSTOP == "start-foreground" ]]; then
exec "${FLINK_BIN_DIR}"/flink-console.sh jobmanager "${args[@]}"
exec "${FLINK_BIN_DIR}"/flink-console.sh $JOBMANAGER_TYPE "${args[@]}"
else
"${FLINK_BIN_DIR}"/flink-daemon.sh $STARTSTOP jobmanager "${args[@]}"
"${FLINK_BIN_DIR}"/flink-daemon.sh $STARTSTOP $JOBMANAGER_TYPE "${args[@]}"
fi
13 changes: 10 additions & 3 deletions flink-dist/src/main/flink-bin/bin/start-cluster.sh
Expand Up @@ -22,6 +22,13 @@ bin=`cd "$bin"; pwd`

. "$bin"/config.sh

FLIP6=$1
CLUSTER_TYPE=cluster

if [[ "$FLIP6" == "flip6" ]]; then
CLUSTER_TYPE=flip6
fi

# Start the JobManager instance(s)
shopt -s nocasematch
if [[ $HIGH_AVAILABILITY == "zookeeper" ]]; then
Expand All @@ -33,16 +40,16 @@ if [[ $HIGH_AVAILABILITY == "zookeeper" ]]; then
for ((i=0;i<${#MASTERS[@]};++i)); do
master=${MASTERS[i]}
webuiport=${WEBUIPORTS[i]}
ssh -n $FLINK_SSH_OPTS $master -- "nohup /bin/bash -l \"${FLINK_BIN_DIR}/jobmanager.sh\" start cluster ${master} ${webuiport} &"
ssh -n $FLINK_SSH_OPTS $master -- "nohup /bin/bash -l \"${FLINK_BIN_DIR}/jobmanager.sh\" start $CLUSTER_TYPE ${master} ${webuiport} &"
done

else
echo "Starting cluster."

# Start single JobManager on this machine
"$FLINK_BIN_DIR"/jobmanager.sh start cluster
"$FLINK_BIN_DIR"/jobmanager.sh start $CLUSTER_TYPE
fi
shopt -u nocasematch

# Start TaskManager instance(s)
TMSlaves start
TMSlaves start $FLIP6
8 changes: 5 additions & 3 deletions flink-dist/src/main/flink-bin/bin/stop-cluster.sh
Expand Up @@ -22,8 +22,10 @@ bin=`cd "$bin"; pwd`

. "$bin"/config.sh

FLIP6=$1

# Stop TaskManager instance(s)
TMSlaves stop
TMSlaves stop $FLIP6

# Stop JobManager instance(s)
shopt -s nocasematch
Expand All @@ -32,10 +34,10 @@ if [[ $HIGH_AVAILABILITY == "zookeeper" ]]; then
readMasters

for master in ${MASTERS[@]}; do
ssh -n $FLINK_SSH_OPTS $master -- "nohup /bin/bash -l \"${FLINK_BIN_DIR}/jobmanager.sh\" stop &"
ssh -n $FLINK_SSH_OPTS $master -- "nohup /bin/bash -l \"${FLINK_BIN_DIR}/jobmanager.sh\" stop \"${FLIP6}\" &"
done

else
"$FLINK_BIN_DIR"/jobmanager.sh stop
"$FLINK_BIN_DIR"/jobmanager.sh stop "${FLIP6}"
fi
shopt -u nocasematch
2 changes: 1 addition & 1 deletion flink-dist/src/main/flink-bin/bin/taskmanager.sh
Expand Up @@ -18,7 +18,7 @@
################################################################################

# Start/stop a Flink TaskManager.
USAGE="Usage: taskmanager.sh (start|start-foreground|stop|stop-all) (flip6)"
USAGE="Usage: taskmanager.sh (start|start-foreground|stop|stop-all) [flip6]"

STARTSTOP=$1
TYPE=taskmanager
Expand Down

0 comments on commit 976450f

Please sign in to comment.