所有分类
  • 所有分类
  • 未分类

K8S–SpringCloud应用整合Nacos实战

简介

本文介绍K8S部署SpringCloud应用整合Nacos实战。

本文是将原来的SpringCloud项目(闪速优选)迁移到K8S上,一行代码都不需要改动。用K8S运行Nacos、Gateway、SpringCloud应用,它们之间通过PodIP进行交互,无需任何干预。

运行流程

  1. 启动Nacos
  2. 网关和应用指定Nacos的服务名和端口号
    1. 启动时,会自动将PodIP注册到Nacos上
  3. 网关通过NodePort暴露出来
  4. 用户请求
    1. 用户请求网关的NodePort,到达网关的Service,分发到其内部Pod。
    2. 网关内部Pod根据Nacos上获得的PodIP等信息去调用应用的Pod

项目架构

准备工作

需要一个工作目录,我的目录是:/work/devops/k8s/app/k8s-springcloud

目录下的文件如下:

所有文件可以在这里下载: 

1.部署Nacos 

此内容查看价格为3.9自学币立即购买,VIP免费

7.查看启动结果并测试接口

1.K8S运行效果

K8S部署全部运行起来了:

注册到了Nacos里边:

 可以看到,是通过PodIP注册上去的,而不是ClusterIP

2.访问接口

前边gateway已经用NodePort暴露,端口号是30010,我的Ubunru虚拟机的ip是:192.168.5.193。

所以,访问order应用的order/create接口是这样的:

URL:http://192.168.5.193:30010/order/order/create

请求体:

{
"amount": 100,
"count": 10,
"productId": 2,
"userId": 1
}

结果

3.查看应用日志 

本文为了简单,日志没处理,直接在K8S查看。生产环境里应该将日志收集到ES里。

注意:应用部署了两个实例,请求不一定到了哪个,所以都要查看一下。

查看order日志(有日志打印)

查看 account日志(有日志打印)

查看storage日志(有日志打印) 

0

评论0

请先

显示验证码
没有账号?注册  忘记密码?

社交账号快速登录