k8s-部署spring cloud微服务
注:commons公共项目服务不用打包,一般commons是一些公共的工具类或者一些公共的插件服务,比如redis、kafka、oss等公共服务让其他业务微服务引入依赖使用。注:因为是测试学习不是实际生产,镜像在服务器本地,所以要修改镜像拉取策略为本地拉取NEVER。注:以下都是学习测试使用,实际生产中肯定会不太一样。
·
过程:
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
具体流程:
注:以下都是学习测试使用,实际生产中肯定会不太一样
1.(本地)微服务打包,打成jar包或者war包:
注:commons公共项目服务不用打包,一般commons是一些公共的工具类或者一些公共的插件服务,比如redis、kafka、oss等公共服务让其他业务微服务引入依赖使用
![]()
![]()
2.制作项目镜像,dockerfile文件:
![]()
![]()
![]()
![]()
(1)本地jar包上传到工作节点服务器,运行命令制作dockerfile镜像(别看如下第一张截图):
![]()
![]()
![]()
![]()
![]()
![]()
![]()
4.用k8s部署镜像:
(1)在master节点部署镜像,provider服务空运行生成yaml文件并应用创建控制器:
注:因为是测试学习不是实际生产,镜像在服务器本地,所以要修改镜像拉取策略为本地拉取NEVER
![]()
![]()
![]()
![]()
(2)在master节点部署镜像,consumer服务依次空运行生成yaml文件并应用创建控制器:
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
(3)NodePort方式对外暴露consumer服务:
![]()
![]()
![]()
![]()
![]()
(4)在master节点部署镜像,gateway网关服务空运行生成yaml文件并应用创建控制器:
![]()
![]()
![]()
![]()
![]()
(5)NodePort方式对外暴露gateway网关服务:
![]()
![]()
![]()
![]()
![]()
5.在gateway网关服务统一部署ingress:
(1)配置Ingress环境(已配置不用再次配置),添加网关服务的ingress规则文件,在k8s添加网关服务的ingress规则
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
(2)在windows电脑本地修改hosts文件,添加域名和IP地址的映射,并在浏览器使用域名访问网关服务,最终转发访问到consumer服务
![]()
![]()
![]()
注意:直接通过k8s的IP+端口是访问不到服务的:

![]()
![]()
k8s一般不部署nacos、MySQL、zk、redis等组件:
![]()
![]()
![]()
![]()
![]()
![]()
k8s常用命令:
![]()
查看pod日志:
![]()
![]()
![]()
未完待续。。。。。。。
更多推荐
所有评论(0)