kd9yYw2RyhQwAwzn
0.01D
V2EX  ›  Java

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

  •  
  •   kd9yYw2RyhQwAwzn · Sep 13, 2023 · 3081 views
    This topic created in 1147 days ago, the information mentioned may be changed or developed.

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

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

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

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

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

    反过来看,还在用 spring cloud 的情况下,就不要用 k8s ,免得互相冲突
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1766 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 17:26 · PVG 01:26 · LAX 09:26 · JFK 12:26
    ♥ Do have faith in what you're doing.