一个综合的分布式项目之项目部署

    项目打包有很多种方式,不管是eclipse的export还是mvn的package,最终目的就是把编译后的项目丢到服务器的tomcat下。我们要部署代码到两台上游服务器和两台下游服务器,感觉比较麻烦,最好的办法是用jenkis来了自动化构建,不过现在也没资源去安装部署一台jenkis了,所以就自己写了一个shell,稍微减少一点工作量,起个名字叫reploy.sh

#! /bin/sh
p1path=/home/scc/upstream001/apache-tomcat-7.0.67
p2path=/home/scc/upstream002/apache-tomcat-7.0.67
p1webappspath=$p1path/webapps
p2webappspath=$p2path/webapps
p1binpath=$p1path/bin
p2binpath=$p2path/bin
temppath=$(pwd)
echo "备份原项目:路径"$p1webappspath"……"
cd $p1path
zip -r "webapps"-$(date +%Y%m%d'-'%H%M%S).zip webapps
echo "备份原项目:路径"$p2webappspath"……"
cd $p2path
zip -r "webapps"-$(date +%Y%m%d'-'%H%M%S).zip webapps
cd ~
echo "进入部署……"
while true;
do
	echo "输入当前目录下要部署的文件名称(如:sss.zip):"
	read filename
	if [[ $filename =~ ".zip" ]];then
			echo "文件格式验证通过"
			if [ ! -f "$temppath/$filename" ];then
				echo "未找到$temppath/$filename,请查看是否上传!确定上传后输入[Y]或[N]退出程序:"
				read isupload
				if [[ $isupload = 'Y' ]];then
						continue;
					else
						echo "程序退出"
						exit 1;
				fi
			else
				echo "文件正确!开始解压……"
				break;
			fi;
		else
			echo "格式不正确请重新输入!"
	fi;
done
zip -d $temppath/$filename *log4j.prperties
zip -d $temppath/$filename *.js
zip -d $temppath/$filename *.css
echo "解压到"$p1webappspath
unzip $temppath/$filename -d $p1webappspath -x
#unzip $temppath/$filename -d $p1webappspath -x *log4j.prperties *redisconfig.properties
echo "解压到"$p2webappspath
unzip $temppath/$filename -d $p2webappspath -x *log4j.prperties *.js *.css
#unzip $temppath/$filename -d $p2webappspath -x *log4j.prperties *redisconfig.properties
cd $p1webappspath
unzip Desktop.zip
cd $p2webappspath
unzip Desktop.zip
echo "解压完毕~!开始重启tomcat……"
cd $p1binpath;
temppath=$(pwd)
if [[ $temppath = $p1binpath ]];then 
		./shutdown.sh
		./startup.sh
		echo 'p1重启完毕……'
	else 
		echo $p1binpath"文件路径不存在"		
fi
cd $p2binpath;
temppath=$(pwd)
if [[ $temppath = $p2binpath ]];then 
		./shutdown.sh
		./startup.sh
		echo 'p2重启完毕……';
	else 
		echo $p2binpath"文件路径不存在"
fi
echo 'tomcat全部重启完毕~!';

这样只需要打包一下本地tomcat的项目,然后上传运行sh文件就可以自动部署到对应目录下了,不过发现shell结尾启动tomcat的地方有点问题,以后再调吧。对了,还要吧本地配置的host也配置到tomcat服务器上去

172.16.60.101 zookeeper.sustainable.com
172.16.60.102 redis.sustainable.com
172.16.60.103 mongo.sustainable.com
172.16.60.104 nginx.sustainable.com
172.16.60.105 tomcat-upstream.sustainable.com
172.16.60.106 tomcat-downstream.sustainable.com
172.16.60.107 gitlab.sustainable.com
172.16.60.108 activeMq.sustainable.com
172.16.60.100 mysql.sustainable.com
172.16.60.104 www.sustainable.com

同时启动zookeeper、mongo、redis、mysql、nginx。

    首先部署下游代码,将sustainable-service打包上传到服务器,执行reploy.sh然后启动tomcat

    然后部署上游代码,将sustainable-interactive打包上传到服务器,执行reploy.sh然后启动tomcat

    最后确保nginx已正确配置并启动。

    浏览器输入http://www.sustainable.com/sustainable-interactive/UserController/toLogin.do

164027_XTYK_2358114.png

现在清空mysql和redis以及mongo的数据,我们来注册一条数据。用户名admin,密码admin

164909_QoXz_2358114.png

164910_VQ7t_2358114.png

164910_Oa0M_2358114.png

数据添加成功,现在登录一下看看

165126_Xice_2358114.png

信息无误,还可以使用dubbo的一个admin系统来查看一些服务状态等,这里就不演示了。

转载于:https://my.oschina.net/shyloveliyi/blog/609883

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值