微服务的部署

微服务的部署

一、 Docker Compose编排工具
1、Docker Compose的安装与卸载
(1)安装条件
Docker Compose是依赖于Docker引擎的,再安装Docker Compose之前要确保机器上已经安装了Docker(使用Docker –v指令查看)
在这里插入图片描述
(2)安装Compose
使用curl命令从GitHub的Compose仓库拉取Docker Compose,再更改Docker Compose的可执行文件权限,并查看安装的Docker Compose效果及版本
微服务的部署_第1张图片
(3)卸载Compose
使用rm指令卸载,即rm /usr/local/bin/docker-compose
2、Compose file文件的使用说明:(1)编写Dockerfile文件;(2)定义yml文件(通常是docker-compose.yml);(3)运行服务部署指令。
二、环境搭建以及镜像准备
1、安装应用编译工具JDK
(1)下载Linux版本的JDK工具包,并使用tar命令进行解压
在这里插入图片描述
(2)将解压包移动到自定义目录下
微服务的部署_第2张图片
(3)配置JDK环境变量,修改/etc/profile文件,在profile文件中添加如下配置
微服务的部署_第3张图片
完成JDK环境配置后,使环境变量生效,并查看安装后的效果
微服务的部署_第4张图片
2、安装应用打包工具Maven
(1)下载Linux版本的Maven工具包,并使用tar命令进行解压
在这里插入图片描述
(2)将解压包移动到自定义目录下
在这里插入图片描述
(3)配置Maven环境变量,修改/etc/profile文件,在profile文件中添加如下配置‘
微服务的部署_第5张图片
完成Maven环境配置后,使环境变量生效,并查看安装后的效果
微服务的部署_第6张图片
3、镜像准备
首先在dockerfile-maven插件配置中配置标签属性值为true,还需修改maven的settings.xml配置文件中配置服务认证信息
微服务的部署_第7张图片
将微服务项目microservice-mallmanagement上传到某个目录下,并进入到项目pom文件所在位置,使用mvn install指令进行打包
微服务的部署_第8张图片
三、微服务的手动部署
1、非集群环境下的服务部署
(1)登录私有仓库
微服务的部署_第9张图片
(2)部署服务
进入到项目docker-compose.yml文件所在目录下,执行服务部署指令(docker
-compose up)来部署整个微服务项目;当服务部署完毕后,使用docker ps指令查看所有服务是否都已正常运行
微服务的部署_第10张图片
当不需要某个服务时,可在项目docker-compose.yml文件所在目录下,执行指令docker-compose down结束整个微服务
微服务的部署_第11张图片
2、集群环境下部署服务
(1)集群服务中的网卡选择性注册
在管理节点manager1上使用docker network ls指令查看集群搭建后的网络列表详情
微服务的部署_第12张图片
①在集群环境下预先自定义一个以overlay为驱动的网络进行本地集群服务网络管理
微服务的部署_第13张图片
(2)集群服务部署
①登录私有仓库
在这里插入图片描述
②部署服务
进入微服务项目中docker-compose-swarm.yml文件所在目录下,使用docker stack deploy指令部署服务
微服务的部署_第14张图片
在管理节点上使用docker service ls指令查看服务列表详情
在这里插入图片描述
在管理节点上使用docker stack指令查看整个服务项目在集群节点的分配与启动情况
微服务的部署_第15张图片
在管理节点上使用docker service 指令查看某个具体服务从启动到运行的整个日志情况
在这里插入图片描述
3、微服务测试
(1)通过visualizer集群服务可视化工具查看服务启动情况,可通过访问地http://192.168.
1.3/查看集群服务可视化工具visualizer界面的显示情况
微服务的部署_第16张图片
微服务的部署_第17张图片
(2)通过Eureka注册中心查看服务的启动情况,可通过访问地址http://192.168.1.3:8761访问Eureka服务注册中心的情况,查看其他服务是否都已启动并注册到该注册中心
微服务的部署_第18张图片
(3)将数据库数据初始化,而MySQL数据库时使用Docker容器构建的,需要对MySQL数据库进行初始化时需要先安装一个MySQL客户端
微服务的部署_第19张图片
通过客户端连接MySQL数据库服务
微服务的部署_第20张图片
在microservice_mallmanagement数据库中创建两个表tb_user和tu_order,分别在两个表中插入数据,并查看数据
微服务的部署_第21张图片

微服务的部署_第22张图片
(4)测试微服务
分别连接用户管理微服务和订单管理微服务的访问地址进行测试
微服务的部署_第23张图片
微服务的部署_第24张图片
(5)测试验证API网关服务
微服务的部署_第25张图片
在这里插入图片描述
四、使用Jenkins自动部署微服务
1、Jenkins安装
(1)下载Jenkins服务
在浏览器中输入Jenkins官网地址https:// jenkins.io/download/访问其下载页面,进行Jenkins的war包下载
微服务的部署_第26张图片
(2)启动Jenkins服务
将下载好的jenkins.war放到manager1机器中的某个目录下,使用如下命令即可启动Jenkins服务
微服务的部署_第27张图片
(3)Jenkins初始化安装
①初始化认证密码
在Jenkins首次启动并访问时需要一个认证密码,该密码在Jenkins初次启动时会自动生成并存储在jenkins目录的某个文件中(初始化页面会有提示,初始化密码存储在/home
/manager1/.jenkins/secrets/AdminPassword文件中),输入指定密码后,单击右下角“Continue”按钮即可。
微服务的部署_第28张图片
微服务的部署_第29张图片
②初始化插件安装
输入初始化认证密码后,会进入一个Jenkins插件定制安装界面,页面中提供Install suggested plugins(安装建议插件)和Select plugins to install两种方式,通常情况下选择左侧nstall suggested plugins(自行选择插件安装)进行初始化插件安装,然后Jenkins服务就会进入插件安装过程
微服务的部署_第30张图片
微服务的部署_第31张图片
③创建管理员用户
当初始化插件安装后,页面会自动跳转到“创建第一个管理员用户”的页面,需要输入管理员信息,再进行保存并完成
微服务的部署_第32张图片
微服务的部署_第33张图片
微服务的部署_第34张图片
创建完毕后,会进入Jenkins主页面
微服务的部署_第35张图片
2、Jenkins集成插件配置
(1)安装Maven插件
依次单击主页面的“系统管理”->“插件管理”->“可选插件”面板,然后在右侧搜索框输入“Maven Integration”关键字进行搜索。搜索出结果后,选中该插件,并单击下方的”直接安装“按钮,即可进行Maven插件安装
微服务的部署_第36张图片
微服务的部署_第37张图片
(2)安装全局插件配置
在Jenkins进行全局插件配置,才能让Jenkins与其他软件关联工作,全局插件主要有JDK(项目编译工具)、Maven(项目打包工具)和Docker(项目部署工具)。
依次单击主页面的“系统管理”->“Global Tool Configuration“面板,进入全局插件配置页面,然后根据整个项目从拉取代码到部署服务所需要的工具进行配置;配置完成后,点击右下角”Save“按钮就会跳转到Jenkins主页面。
微服务的部署_第38张图片
微服务的部署_第39张图片
微服务的部署_第40张图片
3、服务自动化部署
(1)构建新任务
在Jenkins主页面,单击左侧的“新建”按钮,将会跳转到任务构建界面,在任务构建界面填写需要自动化集成、部署的任务名称,然后选中“构建一个maven项目”,然后带年纪点击“OK”按钮就会跳转到该任务配置界面。
微服务的部署_第41张图片
微服务的部署_第42张图片
①配置源码仓库地址
使用Jenkins自动构建任务,需要从源码仓库自动拉取此次构建任务的项目源码,在“源码管理”中选择“Git”,并在“Repository URL”中输入该项目所在的GitHub源码地址
微服务的部署_第43张图片
②构建触发器
构建触发器就是构建任务的出发规则,用来规定什么时候触发任务的构建
微服务的部署_第44张图片
③服务分布配置
在Post Setps(服务发布配置)页面,选择“Add post-build step”下拉列表中的“Exectue shell”选项,并在命令框中输入需要发布服务的shell命令
微服务的部署_第45张图片
完成上述配置后,单击左下角“保存:按钮就会跳转到该任务主页面
微服务的部署_第46张图片
(2)自动化部署服务
单击任务主界面左侧的“立即构建“按钮后,会触发一次立即构建项目的动作,然后整个服务就会进入自动构建过程。同时单击”构建历史“中的倒三角,选择”Console Output“选项来查看整个构建过程的输出信息
微服务的部署_第47张图片
选择进入任务对应的Console Output输出信息页面如下所示
微服务的部署_第48张图片
微服务的部署_第49张图片
部署过程中出现的错误
(1)Maven install失败
微服务的部署_第50张图片
解决方法:将原程序Maven Plugin的版本1.3.6改为1.4.9
在这里插入图片描述
(2)配置源码仓库地址出现如下错误
微服务的部署_第51张图片
解决方法:在管理节点上安装git
微服务的部署_第52张图片
(3)登录私有仓库失败
在这里插入图片描述
解决方法:杀掉之前的registry进程后,重新启动registry
微服务的部署_第53张图片
(4)自动化部署服务时出现如下错误
微服务的部署_第54张图片
解决方法,将本地项目Push到GitHub,具体操作访问地址https://blog.csdn.net/weixin_44495678/article/details/93365580
微服务的部署_第55张图片

你可能感兴趣的:(微服务架构)