亲测解决,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协议保证集群中节点的数据的一致性,是一种强一致性协议。

总结

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

相关文章

  • Java中的Set集合不允许存储重复元素的原理详解

    Java中的Set集合不允许存储重复元素的原理详解

    这篇文章主要介绍了Java中的Set集合不允许存储重复元素的原理详解,我们之前使用Set集合的时候发现,Set集合的特点是不允许存储重复元素,这是为什么呢,下面我们一起来研究一下,需要的朋友可以参考下
    2023-09-09
  • Java文件与IO流详细攻略

    Java文件与IO流详细攻略

    文章详细介绍了Java中的IO流,包括字节流和字符流的区别,如何使用File类进行文件操作,以及如何进行高效的文件读写,文章还讨论了字符编码的重要性,如何避免常见的编码问题,以及如何使用现代的NIO.2 API进行文件操作,感兴趣的朋友跟随小编一起看看吧
    2025-11-11
  • java实现相同属性名称及相似类型的pojo、dto、vo等互转操作

    java实现相同属性名称及相似类型的pojo、dto、vo等互转操作

    这篇文章主要介绍了java实现相同属性名称及相似类型的pojo、dto、vo等互转操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-08-08
  • java ResourceBundle读取properties文件方式

    java ResourceBundle读取properties文件方式

    这篇文章主要介绍了java ResourceBundle读取properties文件方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-08-08
  • springboot读取文件,打成jar包后访问不到的解决

    springboot读取文件,打成jar包后访问不到的解决

    这篇文章主要介绍了springboot读取文件,打成jar包后访问不到的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-07-07
  • 在Java8与Java7中HashMap源码实现的对比

    在Java8与Java7中HashMap源码实现的对比

    这篇文章主要介绍了在Java8与Java7中HashMap源码实现的对比,内容包括HashMap 的原理简单介绍、结合源码在Java7中是如何解决hash冲突的以及优缺点,结合源码以及在Java8中如何解决hash冲突,balance tree相关源码介绍,需要的朋友可以参考借鉴。
    2017-01-01
  • Java异常报错:java.nio.file.FileSystemException的多种解决方案

    Java异常报错:java.nio.file.FileSystemException的多种解决方案

    在Java应用程序中处理文件和目录时,java.nio.file.FileSystemException是一个常见的异常,这个异常发生在尝试进行文件系统操作时,本文将详细探讨FileSystemException的成因,并提供多种解决方案,需要的朋友可以参考下
    2024-12-12
  • Java全排列算法字典序下的下一个排列讲解

    Java全排列算法字典序下的下一个排列讲解

    今天小编就为大家分享一篇关于Java全排列字典序下的下一个排列,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-02-02
  • 详解Idea SpringBoot搭建SpringCloud的准备工作(推荐)

    详解Idea SpringBoot搭建SpringCloud的准备工作(推荐)

    这篇文章主要介绍了Idea SpringBoot搭建SpringCloud的准备工作(推荐),本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-10-10
  • 详解在SpringBoot中@Transactional事物操作和事物无效问题排查

    详解在SpringBoot中@Transactional事物操作和事物无效问题排查

    这篇文章主要介绍了详解在SpringBoot中@Transactional事物操作和事物无效问题排查,本文详细的介绍了SpringBoot中集成使用@Transactional注解操作事物以及事物开启后无效的问题排查,需要的朋友可以参考下
    2021-06-06

最新评论