1 : jboss自动化启动shell
#!/bin/bash
# 当前的执行路径是程序部署根目录,也就是 /opt/apps/{app_name}/deployments/
# 用户自定义参数
APP_NAME="xxx-xxx-service" # 应用名称
OFFSET=0 # 应用端口偏移量
STEPS=20 # 检测间隔,每个间隔 5s
FRAMEWORK_DIR="/opt/jboss-eap" # JBOSS 框架目录
COMMON_DIR="/opt/bnc-common" # NHR-COMMON
BASE_DIR="/opt/apps" # 应用程序根目录
############################################################
############################################################
# 应用程序目录
APP_DIR="${BASE_DIR}/${APP_NAME}"
# 先尝试关闭程序
running_pid=`ps aux | grep ${APP_NAME}/configuration | grep -v grep | awk '{print $2}'`
for pid in ${running_pid}; do
kill -9 ${pid}
done
# 复制配置文件
cd ${APP_DIR}
cp -a ${COMMON_DIR}/share-config/configuration/${APP_NAME}.xml configuration/${APP_NAME}.xml
# 启动应用
cd ${COMMON_DIR}
sh ./run-app.sh -n ${APP_NAME} -o ${OFFSET} -s ${STEPS}
2:jboss 停止shell
#!/bin/bash
# 用户自定义参数
APP_NAME="xxx-xxx-service"
STEPS=20 # 检测间隔,每个间隔 5s
FRAMEWORK_DIR="/opt/jboss-eap" # JBOSS 框架目录
COMMON_DIR="/opt/bnc-common" # NHR-COMMON
BASE_DIR="/opt/apps" # 应用程序根目录
running_pid=`ps aux | grep -w ${APP_NAME}/configuration | grep -v grep | awk '{print $2}'`
for pid in ${running_pid}; do
kill -9 ${pid}
done
3:升级脚本
#!/bin/bash
# APP_NAME
APP_NAME='ecs-job-web'
# JBOSS 路径 和 running-files 路径
FRAMEWORK_DIR="/opt/jboss-eap" # framework 根目录
DPAP_DIR="/opt/ecs-common" # ecs-common 根目录
BASE_DIR="/opt/apps" # war 包根目录
RUNNING_DIR="/opt/running-files" # 运行数据根目录
APP_DIR="${BASE_DIR}/${APP_NAME}"
if [[ ! -d ${FRAMEWORK_DIR} ]]; then
echo "没有安装jboss,请先安装"
exit 1
fi
# 创建程序部署根目录
mkdir -p ${BASE_DIR}
rm -rf ${APP_DIR}
cp -a ${FRAMEWORK_DIR}/standalone ${APP_DIR}
# 创建数据、日志目录
mkdir -p ${RUNNING_DIR}/log/${APP_NAME}
ln -snf ${RUNNING_DIR}/log/${APP_NAME} ${APP_DIR}/log
mkdir -p ${RUNNING_DIR}/data/${APP_NAME}
ln -snf /${RUNNING_DIR}/data/${APP_NAME} ${APP_DIR}/data
# 修改程序根目录属主
chown -R appman:appman ${APP_DIR}