13 December 2012

The Shell Script Stop Start and control JBoss standalone 7.1 final

The Shell Script Stop Start and control JBoss standalone 7.1 final
           the script run by user or root on Linux platform. you need to define variable environment for script Like follow :
            JAVA_HOME = path of java installed (1.6 or higher)
            JBOSS_HOME = path of jboss
            JBOSS_CONFIG = path file of jboss configuration.
            .....bababa........


#!/bin/sh
#
# JBoss standalone control script
#
# chkconfig: - 2012-10-25
# description: JBoss AS Standalone
# processname: standalone
# pidfile: JBOSS_HOME/jboss-as-standalone.pid

# Define Java configuration.
export JAVA_HOME=/usr/local/java

# Load JBoss AS init.d configuration.
if [ -z "$JBOSS_CONF" ]; then
JBOSS_CONF="/opt/JBOSS71/bin/jboss-as-standalone.conf"
fi

[ -r "$JBOSS_CONF" ] && . "${JBOSS_CONF}"

# Set defaults.

if [ -z "$JBOSS_HOME" ]; then
JBOSS_HOME=/opt/JBOSS71
fi
export JBOSS_HOME

if [ -z "$JBOSS_PIDFILE" ]; then
JBOSS_PIDFILE=$JBOSS_HOME/bin/jboss-as-standalone.pid
fi
export JBOSS_PIDFILE

if [ -z "$JBOSS_CONSOLE_LOG" ]; then
JBOSS_CONSOLE_LOG=$JBOSS_HOME/console.log
fi

if [ -z "$STARTUP_WAIT" ]; then
STARTUP_WAIT=30
fi

if [ -z "$SHUTDOWN_WAIT" ]; then
SHUTDOWN_WAIT=30
fi

if [ -z "$JBOSS_CONFIG" ]; then
JBOSS_CONFIG=standalone.xml
fi

if [ -z "$JBOSS_USER" ]; then
JBOSS_USER=pum
fi

JBOSS_SCRIPT=$JBOSS_HOME/bin/standalone.sh

prog='JBOSS71 Server'

start() {
echo -n "Starting $prog:"
if [ -f $JBOSS_PIDFILE ]; then
read ppid < $JBOSS_PIDFILE
if [ `ps --pid $ppid 2> /dev/null | grep -c $ppid 2> /dev/null` -eq '1' ]; then
echo -n "$prog is already running."
#failure
echo
return 1
else
rm -f $JBOSS_PIDFILE
fi
fi
#mkdir -p $(dirname $JBOSS_CONSOLE_LOG)
cat /dev/null > $JBOSS_CONSOLE_LOG
#mkdir -p $(dirname $JBOSS_PIDFILE)
chown $JBOSS_USER $(dirname $JBOSS_PIDFILE) || true

# Cleaning temp server
rm -rf $JBOSS_HOME/standalone/tmp/*
#comand start Jboss Server
eval LAUNCH_JBOSS_IN_BACKGROUND=1 JBOSS_PIDFILE=$JBOSS_PIDFILE $JBOSS_SCRIPT -c $JBOSS_CONFIG 2>&1 > $JBOSS_CONSOLE_LOG &

count=0
launched=false

until [ $count -gt $STARTUP_WAIT ]
do
grep 'Deployed "PUMEAR.ear"' $JBOSS_CONSOLE_LOG > /dev/null
if [ $? -eq 0 ] ; then
launched=true
break
fi
echo -n "."
sleep 1
let count=$count+1;
done
echo ": PumSrv Starting Succeed!!."
return 0
}

stop() {
echo -n $"Stopping $prog:"
count=0;

if [ -f $JBOSS_PIDFILE ]; then
read kpid < $JBOSS_PIDFILE
let kwait=$SHUTDOWN_WAIT

# Try issuing SIGTERM

kill -15 $kpid
until [ `ps --pid $kpid 2> /dev/null | grep -c $kpid 2> /dev/null` -eq '0' ] || [ $count -gt $kwait ]
do
echo -n "."
sleep 1
let count=$count+1;
done

if [ $count -gt $kwait ]; then
kill -9 $kpid
fi
fi
rm -f $JBOSS_PIDFILE > /dev/null
#success
echo " PumSrv Server Stoping Succeed!!."
echo
}

status() {
if [ -f $JBOSS_PIDFILE ]; then
read ppid < $JBOSS_PIDFILE
if [ `ps --pid $ppid 2> /dev/null | grep -c $ppid 2> /dev/null` -eq '1' ]; then
echo "$prog is running (pid $ppid)"
return 0
else
echo "$prog dead but pid file exists"
return 1
fi
fi
echo "$prog is Not running."
return 3
}

case "$1" in
start)
start
;;
stop)
stop
;;
restart)
$0 stop
$0 start
;;
status)
status
;;
*)
## If no parameters are given, print which are avaiable.
echo "Usage: $0 {start|stop|status|restart}"
exit 1
;;
esac
Good luck ..... by stumjub!

No comments:

Post a Comment