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实战 - 自学精灵

相关推荐
GEM的左耳返4 小时前
Java面试全攻略:Spring生态与微服务架构实战
spring boot·redis·spring cloud·微服务·kafka·java面试
Johny_Zhao6 小时前
CentOS Stream 9上部署FTP应用服务的两种方法(传统安装和docker-compose)
linux·网络安全·信息安全·kubernetes·云计算·containerd·ftp·yum源·系统运维
鼠鼠我捏,要死了捏6 小时前
多租户Kubernetes集群架构设计实践——隔离、安全与弹性扩缩容
kubernetes·architecture·multi-tenancy
ldj20207 小时前
docker 自定义网桥作用
docker·容器
java叶新东老师7 小时前
k8s常用命令
云原生·容器·kubernetes
java叶新东老师9 小时前
三、搭建springCloudAlibaba2021.1版本分布式微服务-springcloud loadbalancer负载均衡
分布式·spring cloud·微服务
liux352810 小时前
从零构建:Jenkins与Kubernetes集成的完整指南
java·kubernetes·jenkins
GEM的左耳返12 小时前
互联网大厂Java面试:微服务与AI技术深度交锋
spring cloud·ai·微服务架构·java面试·rag技术
岚天start13 小时前
在K8S环境中,telnet nodePort端口是通的,但是 ss 获取不到端口号原因解析
iptables·kubernetes·k8s·telnet·ss
张火火isgudi14 小时前
CentOS8 使用 Docker 搭建 Jellyfin 家庭影音服务器
服务器·docker·容器