开发者社区 > 云原生 > 正文

NACOS 2.2.2版本,集群下的某个节点内存100%了,导致整个集群内的所有服务都下线。

NACOS 2.2.2版本,集群下的某个节点内存100%了,导致整个集群内的所有服务都下线。

既然是集群,不应该是某个节点当机了,由其他另外的节点来接管吗?为啥会导致我的所有服务都下线了,只有手动的关闭那台内存100%的节点后;服务才慢慢的恢复回来

展开
收起
华购 2023-08-02 15:28:07 183 0
1 条回答
写回答
取消 提交回答
  • 北京阿里云ACE会长

    你遇到的这个问题是Nacos 2.2.2版本的一个已知问题。

    导致这个问题的原因是:

    Nacos 2.2.2版本中,集群节点之间存在强依赖关系

    当一个节点内存占用100%,失去响应时,其他节点会进入等待状态,无法提供服务

    只有失去响应的节点停止服务或重启后,其他节点才会恢复工作

    这并不是集群该有的正常状况,而是Nacos 2.2.2版本的一个bug。

    你遇到这个问题的解决方案是:

    直接重启那个内存占用100%的Nacos节点

    等待Nacos集群中的其他节点检测到该节点下线,随后通过选主算法选出一个新的领导节点

    新的领导节点接管服务,其他节点恢复工作,你的服务才能恢复。

    为了永久消除这个问题,最好的方式是:

    升级到Nacos的最新版本,当前是2.2.4

    修复导致内存占用100%的root cause。例如配置调整、JVM参数优化等

    监控Nacos集群的内存和CPU占用,及早发现异常和加困问题。

    2023-08-03 19:58:29
    赞同 展开评论 打赏

阿里云拥有国内全面的云原生产品技术以及大规模的云原生应用实践,通过全面容器化、核心技术互联网化、应用 Serverless 化三大范式,助力制造业企业高效上云,实现系统稳定、应用敏捷智能。拥抱云原生,让创新无处不在。

热门讨论

热门文章

相关电子书

更多
云服务器ECS内存增强型实例re6全新发布 立即下载
workshop专场-微服务专场-开发者动手实践营-微服务-使用Nacos进行服务的动态发现和流量调度 立即下载
Nacos 启航,发布第一个版本, 云原生时代助力用户微服务平台建设 立即下载