Nacos: 1.4.0版本 单机模式下 错误:code:503,msg:server is DOWN now, please try again later!

Created on 12 Nov 2020  ·  14Comments  ·  Source: alibaba/nacos

protocol-raft日志文件中报错:
java.lang.IllegalArgumentException: Blank leader
at com.alipay.sofa.jraft.util.Requires.requireTrue(Requires.java:85)
at com.alipay.sofa.jraft.RouteTable.updateLeader(RouteTable.java:181)
at com.alipay.sofa.jraft.RouteTable.refreshLeader(RouteTable.java:264)
at com.alibaba.nacos.core.distributed.raft.JRaftServer.refreshRouteTable(JRaftServer.java:501)
at com.alibaba.nacos.core.distributed.raft.JRaftServer.lambda$createMultiRaftGroup$1(JRaftServer.java:276)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
at java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305)
at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
at java.base/java.lang.Thread.run(Thread.java:832)

statuduplicate

Most helpful comment

删除{nacos.home}/nacos/data/protocol文件夹后重新启动。

All 14 comments

麻烦把alipay-jraft.log 日志信息也贴一下

删除{nacos.home}/nacos/data/protocol文件夹后重新启动。

1.4.0使用了jraft, jraft会记录前一次启动的集群地址,如果重启机器ip变了的话,会导致jraft记录的地址失效,从而导致选主出问题。

@KomachiSion 问题怎么解决,我重启了,还有删除了naming文件夹,都没用

@KomachiSion 问题怎么解决,我重启了,还有删除了naming文件夹,都没用

删除data目录下的protocol文件夹

@KomachiSion 问题怎么解决,我重启了,还有删除了naming文件夹,都没用

删除data目录下的protocol文件夹

谢谢 已经可以了

我也遇到了同样的问题。我的nacos在win10下启动,关掉重启后,nacos客户端连接时报错code:503,msg:server is DOWN now, please try again later!。
protocal-raft.log报错:
`2020-11-15 14:56:53,574 ERROR Fail to refresh raft metadata info for group : naming_persistent_service, error is : {}

java.lang.IllegalArgumentException: Blank leader
at com.alipay.sofa.jraft.util.Requires.requireTrue(Requires.java:85)
at com.alipay.sofa.jraft.RouteTable.updateLeader(RouteTable.java:181)
at com.alipay.sofa.jraft.RouteTable.refreshLeader(RouteTable.java:264)
at com.alibaba.nacos.core.distributed.raft.JRaftServer.refreshRouteTable(JRaftServer.java:501)
at com.alibaba.nacos.core.distributed.raft.JRaftServer.lambda$createMultiRaftGroup$1(JRaftServer.java:276)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)`

按照 @horizonzy 的方法:

删除{nacos.home}/nacos/data/protocol文件夹后重新启动。

成功连上。我用的校园网,笔记本通过dhcp获取ip,所以会出现重启后ip和之前不一样的情况。但是我把nacos服务器的压缩包解压后,就直接修改startup.cmd,把默认的启动模式从cluster改成standalone,每次启动的时候都是以单机模式启动的,为什么还会出现选举leader的情况?

现在引入了SofaJRaft,单机情况下也是存在节点了。流程和集群一样,需要先选出leader,再提供服务

这个问题,需要分析下{nacos.home}/nacos/logs下的protocol-raft.log以及alipay-jraft.log日志

Move to #4291.

非常感谢楼主的分享!问题解决.分享此贴给学习nacos的同胞们

@KomachiSion 问题怎么解决,我重启了,还有删除了naming文件夹,都没用

删除data目录下的protocol文件夹

单机模式下,我是直接把 nacos\data下所有文件删除就可以了

1.4.0使用了jraft, jraft会记录前一次启动的集群地址,如果重启机器ip变了的话,会导致jraft记录的地址失效,从而导致选主出问题。

jraft虽好,但这确实有点儿坑

集群环境下,如果某主机IP变了,会导致nacos控制台网站访问死慢,需要在nginx.conf和nacos的cluster.conf中重新更正下IP就好。

Was this page helpful?
0 / 5 - 0 ratings

Related issues

AliGHRobot picture AliGHRobot  ·  4Comments

yanlinly picture yanlinly  ·  6Comments

xiaostart977 picture xiaostart977  ·  7Comments

mark-wk picture mark-wk  ·  7Comments

xuyixun21 picture xuyixun21  ·  6Comments