热部署

说明:

本文档的目的是让发布部署做到用户无感知,不影响现网正常使用。

这里只包括web和服务端的部署,数据库要根据实际情况来做处理,很难做到热部署,所以这里不做说明。

另外,由于发布部署过程中,会将部分服务器从现网摘除,所以仍然会影响到现网的处理能力,需要根据在线用户情况来权衡,最好还是要在用户比较少的时候部署。

 

  1. web部署
    1. 从nginx中去掉要部署的服务
      1. 修改nginx配置

使用ssh登录到服务器

打开nginx配置文件

# cd /usr/local/nginx/

# vi conf/nginx.conf

找到upstream配置:

将服务注释掉,比如我们要部署10.13.1.18,则注释掉server 10.13.1.18:3311;

保存退出

      1. 使nginx配置生效

# sbin/nginx -s reload

如果没有任何错误信息,说明配置正确

看一下日志,是否已经切换了

# cd /home/logs/nginx

# tail -f access.log

多访问几次,看看是否已经没有了10.13.1.18:3311的日志,如果没有了,说明修改生效。

 

    1. 通过jenkins发布

 

使用jenkins发布新的war包到10.13.1.18,这部分和以前一样,这里不再详细说明

 

    1. 在nginx中加上服务
      1. 恢复nginx配置

War包发布成功以后,将服务恢复,同样打开nginx的配置文件

# cd /usr/local/nginx/

# vi conf/nginx.conf

将之前注释的部分去掉

改为:

      1. 使nginx配置生效

# sbin/nginx -s reload

如果没有任何错误信息,说明配置正确

看一下日志,是否已经切换了

# cd /home/logs/nginx

# tail -f access.log

 

多访问几次,看看是否有10.13.1.18:3311的日志,如果有了而且是status是200,说明修改生效。

  1. service部署

 

访问dubbo-monitor控制台:http://117.144.188.16/monitor/

你将看到如下页面:

    1. 去掉dubbo服务端注册信息

点击dubbo-monitor控制台中的Hosts菜单,可以看到当前所有的服务器信息

找到你要部署的服务端地址,点击Providers,比如我们要卸载重新部署10.13.1.13里的一个服务:

可以看到这里有两个服务提供者,点击进去可以看到服务提供者的详细信息,:

 

点击你想要部署的服务端右面的按钮,就会将改服务提供者从zookeeper中卸载掉了,如果你不知道服务端对应的是哪个tomcat,可以ssh到linux服务器,通过端口查找,如下:

# ssh root@10.13.1.13

根据服务提供者的端口,如图:

查看一下该端口对应的tomcat是哪个:

# netstat -anp|grep 20888

可以看到用java进程的ID,然后查看该ID对应的进程信息

# ps -ef|grep 4406

这样我们就知道了20888对应的是apache-tomcat-testdataverify02,到jenkins中根据配置就可以找到对应的部署任务。

 

    1. 等待服务把任务处理完

上一步从zookeeper中把服务端摘除,这个只是删除了注册信息,也就是说,新的任务不会看到它,但是它正在处理的任务还是要继续执行的,所以这里要关注一下日志信息,如果有日志打印,就说明还有任务,等待一会,当没有新的日志之后,再发布。

# cd /home/work/tomcat/apache-tomcat-testdataverify02

# tail -f logs/catalina.out

等待几分钟,当确实没有新的日志,再发布

 

    1. 通过jenkins发布

使用jenkins发布新的war包,这部分和以前一样,这里不再详细说明

发布完成后,服务端会自动注册到zookeeper中,可以通过dubbo-monitor控制台确认一下,是否有该服务。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值