亲测解决,nacos下线失败问题

 更新时间:2024年07月31日 08:43:46   作者:小红的成长日记  
这篇文章主要介绍了亲测解决,nacos下线失败问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

场景重现

当多个开发者共同投入一个项目的时候,通常会出现一个项目同时启动,调用接口调试工具共同测试的接口开发情况的情形;

为了保证测试环境的稳定性,我们一般不通过页面进行调试,这时我们会采用在nacos服务中,将测试应用下线的动作;

如下图,我们需要将B + C服务下线。

图片

问题浮现

当点击“下线”按钮的时候,无法正常下线,出现下面问题。

图片

caused: errCode: 500, errMsg: 
do metadata operation failed ;caused: com.alibaba.nacos.consistency.exception.ConsistencyException: 
The Raft Group [naming_instance_metadata] did not find the Leader node;caused: The Raft Group [naming_instance_metadata] did not find the Leader node;
//错误消息表示Raft Group [naming_instance_metadata] 没有找到Leader节点。这可能是由网络问题、节点故障或者配置错误导致的。

这是因为:当我们自己的服务器 IP 改变时(网络环境不稳定,如WIFI或者IP地址变化),导致 raft 记录的集群地址失效。

我的问题原因是网络的变化,我在nacos启动过程中,IP地址有变化;

  • ①采用删除nacos安装目录下data下的protocol文件夹;
  • ②重启nacos服务的方法即可解决。

图片

番外一:Linux如何找到/data/protocol文件夹

备注:下面的内容是前提是,使用docker启动的nacos

1.查看容器名称

docker ps

图片

2.进入容器

// 进入容器
docker exec -it nacos bash

// 如果你进来的目录不对,不要着急,进入/home/nacos目录下即可
cd /home/nacos

// 进入data目录,重复下面步骤,删除目标文件夹即可
rm -rf protocol/

图片

番外二:Linux如何删除protocl文件夹

// 进入data目录
cd /data
// 循环删除protocol目录
rm -rf protocol/
nacos的raft协议

nacos介绍

Nacos是一个用于动态服务发现、配置管理和服务管理的开源项目。

Nacos集群不仅支持AP模式(分区可用性),也支持CP模式(分区一致性)。对于临时数据的同步,采用的是AP模式,对于持久性的数据,采用的CP模式,使用raft协议实现。

raft协议是什么

在Nacos的架构中,使用了Raft协议来实现多节点之间的一致性。

raft协议是一种分布式一致性协议。

raft协议保证集群中节点的数据的一致性,是一种强一致性协议。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 海量数据去重排序bitmap(位图法)在java中实现的两种方法

    海量数据去重排序bitmap(位图法)在java中实现的两种方法

    今天小编就为大家分享一篇关于海量数据去重排序bitmap(位图法)在java中实现的两种方法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-02-02
  • java 读写Parquet格式的数据的示例代码

    java 读写Parquet格式的数据的示例代码

    本篇文章主要介绍了java 读写Parquet格式的数据的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-09-09
  • Java编程实现轨迹压缩算法开放窗口实例代码

    Java编程实现轨迹压缩算法开放窗口实例代码

    这篇文章主要介绍了Java编程实现轨迹压缩算法开放窗口实例代码,具有一定借鉴价值,需要的朋友可以参考下。
    2017-11-11
  • Java实现经典游戏超级玛丽的示例代码

    Java实现经典游戏超级玛丽的示例代码

    在你的童年记忆里,是否有一个蹦跳、顶蘑菇的小人?本文将用java语言实现经典游戏《超级玛丽》,文中采用了swing技术进行了界面化处理,需要的可以参考一下
    2022-02-02
  • 排查Java应用内存泄漏问题的步骤

    排查Java应用内存泄漏问题的步骤

    这篇文章主要介绍了排查Java应用内存泄漏问题的步骤,帮助大家更好的理解和学习Java,感兴趣的朋友可以了解下
    2020-11-11
  • Java中关于二叉树层序遍历深入了解

    Java中关于二叉树层序遍历深入了解

    二叉树的层序遍历是面试经常会被考察的知识点,甚至要求当场写出实现过程。层序遍历所要解决的问题很好理解,就是按二叉树从上到下,从左到右依次打印每个节点中存储的数据,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-09-09
  • springboot整合mybatis-plus基于注解实现一对一(一对多)查询功能

    springboot整合mybatis-plus基于注解实现一对一(一对多)查询功能

    这篇文章主要介绍了springboot整合mybatis-plus基于纯注解实现一对一(一对多)查询功能,因为本人采用的是spring-boot进行开发,本身springboot就提倡采用不用配置自动配置的方式,所以真心希望mybatis(不是mybatis-plus)这点需要继续努力
    2021-09-09
  • Java后端登录实现返回token

    Java后端登录实现返回token

    本文主要介绍了Java后端登录实现返回token,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-07-07
  • SpringBoot数据层测试事务回滚的实现流程

    SpringBoot数据层测试事务回滚的实现流程

    这篇文章主要介绍了SpringBoot数据层测试事务回滚的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习吧
    2022-10-10
  • IDEA关闭git管理,文件变成红色解决方案

    IDEA关闭git管理,文件变成红色解决方案

    在软件开发中,当一个文件夹内的Java项目启用Git版本控制,通常会导致该文件夹下所有项目同步开启Git,这种做法有助于保持项目的一致性和可追溯性,但也可能带来管理上的复杂性,如果需要解除某个项目的Git管理,可以通过IDE的设置选项进行调整
    2024-10-10

最新评论