开发者

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

目录
  • 场景重现
  • 问题浮现
  • 番外一:linux如何找到/data/protocol文件夹
  • 番外二:Linux如何删除protocl文件夹
  • nacos介绍
  • 总结

场景重现

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

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

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

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

问题浮现

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

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

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 [namingpython_instance_metadata] did not find the Leader node;

//错误消息表示Raft Group [naming_instance_metadata] 没有找到LvfLxZOnpeader节点。这可能是由网络问题、节点故障或者配置错误导致的。

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

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

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

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

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

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

1.查看容器名称

docker ps

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

2.进入容器

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

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

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

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

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

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

nacos介绍

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

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

raft协议是什么

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

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

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

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程客栈(www.devze.com)。

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新开发

开发排行榜