weblogic启动脚本v2.0

改动地方

1、在测试应用为用友NC6,因为NC的集群有master的概念,非master节点依赖于master,所以,对于此种情况,必须首先判定master正常启动,才能启动其他节点。

经项目测试,发现有时master端口打开后就去启动其他节点,有时会遇到master not ready的错误,因此,手动在master端口起来后增加sleep 20.

2、其他所有server因为没有依赖关系,所以,可以并行启动,减小启动时间。

3、使用函数处理启动过程和判断端口打开过程,有效较少代码数量。

#!/bin/bash
#author:wjf
#date:2015/05/19
#version:2.0
#测试环境为wls1036水平集群
 
v_curr_user=`whoami`
#------------实际was和代码安装的用户,比如用ufida,就直接把”nc63“改成”ufida"就行。

v_start_user=uweblogic
#------------用于安装和启动weblogic服务器的用户

v_admin_url=http://10.10.71.106:9001
#------------管理服务器的url

v_dir_domain_bin=/weblogic/Oracle/Middleware/user_projects/domains/gyhr_domain/bin
#------------启动域的bin目录路径

v_admin_port=9001
#------------weblogic管理服务器端口

#根据服务端口是否打开判定服务时候已经启动
f_is_service_start()
	{
	v_is_port_open=0
	while [  ${v_is_port_open} -eq 0 ]
		do
			sleep 10
			v_is_port_open=`netstat -ano |grep ${1}|wc -l`
		done
	}

#启动受管理服务器
f_start_ms()
	{
	echo "启动受管服务器${1}"
	cd ${v_dir_domain_bin}
	nohup ./startManagedWebLogic.sh  ${1} ${v_admin_url} &
	f_is_service_start ${2}
	echo "${1}启动完毕"
	echo ""
	}


#主代码部分 
if [ ${v_curr_user} = ${v_start_user} ]
        then
                #启动服务代码部分
		echo "启动管理服务器"
		cd ${v_dir_domain_bin}
		nohup ./startWebLogic.sh &
		f_is_service_start ${v_admin_port}
		echo "启动管理服务器完毕"
		echo ""
#---------------修改定制部分(始)------------------
		f_start_ms master 8001
		sleep 20
		f_start_ms server1 8002 &
		f_start_ms server2 80003 &
#---------------修改定制部分(终)-------------------
	else
		echo "当前用户为${v_curr_user}"
                echo "建议使用${v_start_user}启动服务"
                echo "请检查当前用户环境"
fi



郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。