有用过 spring cloud kubernetes 的 v 友吗 想交流一下使用经验

2023-09-13 10:32:32 +08:00
 kd9yYw2RyhQwAwzn

目前公司有一套 springcloud 项目部署在 k8s 上 版本是 2.1.3.RELEASE Greenwich.SR3 JDK1.8

服务发现的中间件用的是 nacos ,稍微有点不满意的地方是当节点发生异常重启后 nacos 集群会发生脑裂,翻看了好多 issues 也没有找到一个好的解决方案 又受限于 springboot 跟 cloud 的版本 不能升级 nacos

最近将服务发现由 nacos 切换到了 spring cloud kubnernetes 在测试环境部署发现用着还可以 所以想咨询一下大家有没有用到过这个 有没有什么暗坑

1704 次点击
所在节点    Java
14 条回复
liminany1
2023-09-13 11:30:36 +08:00
nacos 不是多节点自动负载均衡的吗?
yimiaoxiehou
2023-09-13 11:41:50 +08:00
@liminany1 nacos 有 bug ,宕机重启有一定几率集群出故障
yimiaoxiehou
2023-09-13 11:42:20 +08:00
kubnernetes 的负载均衡是基于 dns 的,理论上没啥问题
anubu
2023-09-13 11:46:23 +08:00
同样的结构,请教一下配置是如何处理的。我们的环境 Nacos 同时作为配置中心,想清理掉 Nacos ,还不清楚配置要如何处理,如果还要部署其它配置中心,清理 Nacos 的意义就不太大了。
liminany1
2023-09-13 12:01:49 +08:00
不太明白你的问题点在哪里?
nacos 有 bug ,然后 nacos 会挂掉,然后导致其他应用节点出问题? 这样的话应用肯定会短暂挂起,但应用本身应该有重连机制吧?

我说的是 nacos 可以有多个节点,一个挂另一个生效,对应用那边使用的是域名应该是无感知的呀?不会受影响
liminany1
2023-09-13 12:04:36 +08:00
@anubu 配置那就要移动应用代码端了,容器的话配置可以配环境变量,会覆盖配置文件里面的配置。
kd9yYw2RyhQwAwzn
2023-09-13 13:11:09 +08:00
@liminany1 nacos 的节点重启后 会存在集群节点之前数据不同步的问题 这样就导致 nacos 集群中每个节点的 service 实例数量不一致 进而导致服务间调用会出现没有实例的问题 并且除了逐个重启之外没啥别的办法
kd9yYw2RyhQwAwzn
2023-09-13 13:11:43 +08:00
@anubu 配置打算继续用 nacos 了
agzou
2023-09-13 13:57:29 +08:00
spring cloud k8s 也可以作为配置中心,新增一个和服务同名的的 config map 就可以了,我们用来替换 nacos ,服务发现没什么问题,但是作为配置中心,配置刷新似乎有点问题,修改配置没有自动刷新,需要手动重启,这个问题也没有仔细取查,暂不影响。
winglight2016
2023-09-13 14:37:25 +08:00
都部署在 k8s 上了,还用 nacos 干吗?我们自己基于 etcd 开发了一个配置中心,也没费多少功夫
kd9yYw2RyhQwAwzn
2023-09-13 15:27:25 +08:00
@winglight2016 历史包袱太重了 公司也没重构的打算 服务发现的话 你们用了什么方案呀
me1onsoda
2023-09-13 16:27:31 +08:00
都 k8s 了,还搞 spring cloud 这套垃圾?
tudou1514
2023-09-13 18:16:20 +08:00
k8s 的话可以不要服务发现,你可以理解 svc 就是服务发现
winglight2016
2023-09-13 20:31:10 +08:00
@kd9yYw2RyhQwAwzn k8s 里的 service 地址是固定的,不再需要服务发现了,前面的回复已经说了,用了 k8s,spring cloud 已经没什么价值了

反过来看,还在用 spring cloud 的情况下,就不要用 k8s ,免得互相冲突

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/973287

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX