首页 > 开发 > Linux Shell > 正文

linux bash脚本监控启动停止weblogic服务的脚本写法

2020-07-27 18:57:50
字体:
来源:转载
供稿:网友

有时,linux系统需要做HA或者类似的功能,需要配置weblogic脚本来启动,停止,查看状态,可以如下方式写

命令形式:Weblogic server start|stop|restart|status

### BEGIN WLS ConfigrationDOMAIN_NAME=base_domainSERVER_NAME=AServer ADMIN_URL="t3://ip:7001"DOMAIN_PATH=/Oracle/Middleware/user_projects/domains/${DOMAIN_NAME}#使用这个命令得到weblogic对应服务进程的进程号WLS_PID=`ps -ef|grep java|grep =${SERVER_NAME}|awk '{print $2}'`#USER_NAME=`logname`USER_NAME=`whoami`## WLS_MEMORYUSER_MEM_ARGS="-Xms2048m -Xmx3096m -XX:PermSize=256m -XX:MaxPermSize=512m"export USER_MEM_ARGS### END WLS Configration######### Weblogic server start|stop|restart|status#用于等待进程启停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 1fi#domain不能为空if [ "$DOMAIN_NAME" = "" ] ; then  echo "DOMAIN_NAME is not set! Plz set DOMAIN_NAME!"  exit 1fi#service不能为空if [ "$SERVER_NAME" = "" ] ; then  echo "SERVER_NAME is not set! Plz set SERVER_NAME!"  exit 1fi#url不能为空if [ "$ADMIN_URL" = "" ] ; then  echo "ADMIN_URL is not set! Using default ADMIN_URL!"fi#如果是查看状态命令       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 fifiprintf "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#如果是停止命令,这里不使用这个        if [ "$1" = "stop" ]then        echo ""else#启动命令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脚本监控启动停止weblogic服务的脚本写法,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表