Jenkins自动化部署项目

Jenkins自动化部署项目

经过一天的学习终于成功使用Jenkins搭建了一套自动化部署环境,用在了公司的后台的微服务自动化部署,为了加深记忆以及广大程序员学习,特做出了总结,以便让后续开发者有迹可寻。

项目部署原理:

首先项目部署到git服务器,每当我们代码完成提交后,我们会通过git客户端上传代码到git服务器,然后我们会通过jenkins自动化部署,自动化部署的过程为,通过git客户端从服务器拉取代码到本地,编译打包本地代码,上传打包完成后的代码到linux服务器,通过脚本启动linux环境中刚上传打包好的代码。此时我们自动化部署就完成了。

项目部署准备:

1. 项目部署环境
1) 前端nginx服务

负载均衡nginx 110.145.192.220:8888
静态服务器1 nginx1 110.145.192.220:8887
静态服务器2 nginx2 110.145.192.220:8889

前端nginx部署环境可以参考https://blog.youkuaiyun.com/jzc12345611/article/details/100701761

2) zookeeper注册中心

110.145.192.221:2181

3) 配置中心configserver

110.145.192.216:8080

4) 微服务地址

gteway1 110.145.192.215:8092
gteway2 110.145.192.215:8093
其他微服务,端口为配置类

5) 数据库

110.145.113.22:1521
url: jdbc:oracle:thin:@110.145.113.22:1521/orcl
username: ouos
password: ouos

2. git服务器代码库

http://110.146.121.138:8091/

3. jenkins服务器

http://110.146.126.140:8090/jenkins/

4. 部署脚本

脚本资料在网盘已经给出

项目部署步骤:

1. 从git服务器拉取代码
git地址:

http://110.146.121.138:8091/summary/?r=ouos-parent.git 用户名密码联系管理员

1)config-file:

配置测试环境jar包的配置文件(微服务的配置)
dataconfig目录下
bootstrap.yml连接测试环境配置中心,
dfzq-grpc-config.properties 连接注册中心的地址并注册

gateway目录下
bootstrap.yml连接测试环境注册中心,曝漏网关的地址端口8099
dfzq-grpc-config.properties 连接注册中心的地址并注册

ouosserver目录下
bootstrap.yml连接测试环境注册中心
dfzq-grpc-config.properties 连接注册中心的地址并注册

2)Config-file-dev:

配置开发环境jar包的配置文件(微服务的配置)
dataconfig目录下
bootstrap.yml连接测试环境配置中心,
dfzq-grpc-config.properties 连接注册中心的地址并注册

gateway目录下
bootstrap.yml连接测试环境注册中心,曝漏网关的地址端口8092
dfzq-grpc-config.properties 连接注册中心的地址并注册

ouosserver目录下
bootstrap.yml连接测试环境注册中心
dfzq-grpc-config.properties 连接注册中心的地址并注册

gateway2目录下
bootstrap.yml连接测试环境注册中心,曝漏网关的地址端口8093
dfzq-grpc-config.properties 连接注册中心的地址并注册

注意:config-file-dev在Config-file的基础上添加了gateway2该网关是新增了的网关,对应前端做负载均衡用

3)ouos-parent:

开发代码,项目代码存放地址,需要打成jar包的多个微服务项目

4)stages:

Ansible-playbook 的运行host 配置,以及用到的脚本
ansibleHosts配置可连接到项目的网段,jenkins服务器连接到的地址应该在改网段内
build-ouos-parent.yml测试环境打包
build-ouos-parent-dev.yml 开发环境第一次打包
build-ouos-parent-dev2.yml 开发环境第二次打包
control-accountmgr.yml 查看启动状态
deploy-ouos-parent.yml 测试环境部署项目到服务器
deploy-ouos-parent2.yml 开发环境部署项目到服务器
ouos-gateway.sh.j2 测试环境以及开发环境第一次启动gateway服务
ouos-gateway-2.sh.j2开发环境第二次启动gateway2服务
ouos-dataconfig.sh.j2 启动dataconfig服务的脚本
ouos-queryserver.sh.j2 启动查询服务的脚本

2. Jenkins部署:
1)登录jenkins

http://110.146.126.140:8090/jenkins/ 用户名密码联系管理员

2)找到部署项目的选项

登录成功后按照以下步骤操作

第一次构建

大营运-> devops-开发环境-> Build with Parameters-> mode-name选择all -> 开始构建
这时项目开始构建部署了,如果想查看日志点击构建项目的时间进程条即可
因为开发环境为集群环境需要多部署一个gateway2所以需要构建两次

第二次构建

大营运 ->devops-开发环境->Build with Parameters ->mode-name选择gateway2 -> 开始构建
构建成功后会在日志中显示Finished: SUCCESS字眼,且构建条的颜色为绿色
如果构建失败在日志中显示Finished: falture字眼,且构建条的颜色为红色

部署的微服务有:ouos-server, gateway,dataconfig,gateway2服务,其中gateway2要在开发环境的第二次部署时部署。

3. Jenkins其他参数介绍

 Refspec:
origin/master
origin/dev
选择代码分支

 Force:
勾选是重新拉代码打包
不勾选跳过打包,直接用上次打包的进行部署

 IPs:
部署机ip。输入对应环境的IP,多个ip用逗号隔开

 repo_name:
项目名称

 app_name:
应用名称

 model_name:
模块名称,all代表在目标主机上部署所有model.可选项:代表各类微服务,如果后续添加微服务则需要添加各类微服务
All
dataconfig
ouos-gateway
ouos-query-server
ouos-gateway2

 git_dir:
源码所在目录

 build_dir:
打包路径

 Nodes:
节点

 buildfile_tag:
构建文件的标记,如1.0-SNAPSHOT

4. 构建Shell脚本

项目部署拓扑图:

项目部署拓扑图地址:https://www.processon.com/diagraming/5d9ec772e4b002a6447b9640
项目部署拓扑图截图如下:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值