linux bash腳本監(jiān)控啟動(dòng)停止weblogic服務(wù)的腳本寫法
有時(shí),linux系統(tǒng)需要做HA或者類似的功能,需要配置weblogic腳本來啟動(dòng),停止,查看狀態(tài),可以如下方式寫
命令形式:Weblogic server start|stop|restart|status
### BEGIN WLS Configration
DOMAIN_NAME=base_domain
SERVER_NAME=AServer
ADMIN_URL="t3://ip:7001"
DOMAIN_PATH=/Oracle/Middleware/user_projects/domains/${DOMAIN_NAME}
#使用這個(gè)命令得到weblogic對(duì)應(yīng)服務(wù)進(jìn)程的進(jìn)程號(hào)
WLS_PID=`ps -ef|grep java|grep =${SERVER_NAME}|awk '{print $2}'`
#USER_NAME=`logname`
USER_NAME=`whoami`
## WLS_MEMORY
USER_MEM_ARGS="-Xms2048m -Xmx3096m -XX:PermSize=256m -XX:MaxPermSize=512m"
export USER_MEM_ARGS
### END WLS Configration
######### Weblogic server start|stop|restart|status
#用于等待進(jìn)程啟停
wait_for_pid ()
{
try=0
case "$1" in
'created')
while test $try -lt 7 ; do
printf .
try=`expr $try + 1`
sleep 1
done
WLS_PID=`ps -ef|grep java|grep ${SERVER_NAME}|awk '{print $2}'`
if [ "$WLS_PID" != "" ] ; then
try=''
fi
;;
'removed')
while test $try -lt 35 ; do
WLS_PID=`ps -ef|grep java|grep ${SERVER_NAME}|awk '{print $2}'`
if [ "${WLS_PID}" = "" ] ; then
try=''
break
fi
printf .
try=`expr $try + 1`
sleep 1
done
;;
esac
}
#判斷操作用戶名,不能是root需要使用weblogic用戶
if [ "$USER_NAME" = "root" ] ; then
echo "USER_NAME is $USER_NAME! Plz use weblogic!"
exit 1
fi
#domain不能為空
if [ "$DOMAIN_NAME" = "" ] ; then
echo "DOMAIN_NAME is not set! Plz set DOMAIN_NAME!"
exit 1
fi
#service不能為空
if [ "$SERVER_NAME" = "" ] ; then
echo "SERVER_NAME is not set! Plz set SERVER_NAME!"
exit 1
fi
#url不能為空
if [ "$ADMIN_URL" = "" ] ; then
echo "ADMIN_URL is not set! Using default ADMIN_URL!"
fi
#如果是查看狀態(tài)命令
if [ "$1" = "status" ]
then
if [ "${WLS_PID}" = "" ] ; then
echo "No pid - $SERVER_NAME is not running !"
exit 1
else
echo "$SERVER_NAME is running !"
exit 0
fi
fi
printf "Terminating $SERVER_NAME "
if [ "${WLS_PID}" = "" ] ; then
echo "No pid - $SERVER_NAME is not running !"
else
kill -9 $WLS_PID
wait_for_pid removed
if [ -n "$try" ] ; then
echo " failed "
exit 1
fi
echo " done ! "
exit 0
fi
#如果是停止命令,這里不使用這個(gè)
if [ "$1" = "stop" ]
then
echo ""
else
#啟動(dòng)命令
printf "Starting $SERVER_NAME "
if echo $SERVER_NAME|grep -q dmin ; then
nohup sh $DOMAIN_PATH/bin/startWebLogic.sh &
else
nohup sh $DOMAIN_PATH/bin/startManagedWebLogic.sh $SERVER_NAME $ADMIN_URL &
fi
wait_for_pid created
if [ -n "$try" ] ; then
echo " failed "
exit 1
else
echo " done ! "
exit 0
fi
fi
echo "To check the log, you may excute:"
echo "tail -100f "
以上所述是小編給大家介紹的linux bash腳本監(jiān)控啟動(dòng)停止weblogic服務(wù)的腳本寫法,希望對(duì)大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會(huì)及時(shí)回復(fù)大家的!
相關(guān)文章
Shell根據(jù)web日志計(jì)算平均連接時(shí)間功能
這篇文章主要介紹了Shell根據(jù)web日志計(jì)算平均連接時(shí)間功能,本文給出了原代碼和自己修改后的代碼,需要的朋友可以參考下2014-12-12
一天一個(gè)shell命令 linux文件操作系列-ln命令詳解
這篇文章主要介紹了一天一個(gè)shell命令 linux文件操作系列-ln命令詳解 ,需要的朋友可以參考下2016-06-06
Shell腳本自動(dòng)備份MySQL到FTP并定期清理過期備份
這篇文章主要介紹了Shell腳本自動(dòng)備份MySQL到FTP并定期清理過期備份,本文中的腳本同時(shí)實(shí)現(xiàn)了定期清理舊備份數(shù)據(jù)的功能,這是一大特色,需要的朋友可以參考下2014-12-12
linux 驅(qū)動(dòng)之Kconfig文件和Makefile文件實(shí)例
這篇文章主要介紹了linux 驅(qū)動(dòng)之Kconfig文件和Makefile文件實(shí)例的相關(guān)資料,需要的朋友可以參考下2017-01-01

