K8S--SpringCloud应用整合Nacos实战

原文网址:K8S--SpringCloud应用整合Nacos实战-CSDN博客

简介

本文介绍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

效果展示

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

请求体:

bash 复制代码
{
"amount": 100,
"count": 10,
"productId": 2,
"userId": 1
}

结果

3.查看应用日志

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

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

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

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

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

项目架构

准备工作

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

目录下的文件如下:

所有文件在云盘:

1.部署Nacos

上边是文章的部分内容,为便于维护,全文已转移到此网址:K8S-SpringCloud应用整合Nacos实战 - 自学精灵

相关推荐
Thomas.Sir31 分钟前
第28课:统一日志收集、ELK搭建 & 线上问题排查体系
elk·spring cloud
壹玖玖肆1 小时前
Docker 部署 openGauss 7.0(aarch64)MySQL 兼容模式建库与数据恢复完整实践
mysql·docker·容器
kaixin_啊啊2 小时前
飞牛部署Mtab完整实战:Docker安装、MySQL建库与固定地址访问
mysql·docker·容器
程序员老赵15 小时前
Docker 部署 Wiki.js:轻松搭建私有化维基知识库
docker·容器·开源
灯澜忆梦17 小时前
【Docker】#5 | 网络配置
网络·docker·容器
刘胡子大叔17 小时前
docker build 跑了 92 分钟还是失败了
docker·容器
%KT%20 小时前
ubuntu系统部署docker
运维·docker·容器
来福猿1 天前
Nacos 源码解析:服务注册、配置中心与心跳续约机制
spring·spring cloud
flytalei1 天前
Kubernetes健康检查探针
云原生·容器·kubernetes