關(guān)于nacos無法正常下線問題記錄
問題描述
公司搭建了nacos集群,但是在微服務(wù)下線時會無法正常下線,點(diǎn)擊下線提示
caused: errCode: 500, errMsg: do metadata operation failed ;caused: com.alibaba.nacos.consistency.exception.ConsistencyException: com.alibaba.nacos.core.distributed.raft.exception.NoLeaderException: The Raft Group [naming_instance_metadata] did not find the Leader node;caused: com.alibaba.nacos.core.distributed.raft.exception.NoLeaderException: The Raft Group [naming_instance_metadata] did not find the Leader node;
ERROR Fail to refresh route configuration for group : naming_instance_metadata, status is : Status[UNKNOWN<-1>: Fail to get leader of group naming_instance_metadata]
ERROR Fail to refresh route configuration for group : naming_service_metadata, status is : Status[UNKNOWN<-1>: Fail to get leader of group naming_service_metadata]
解決方案
單機(jī)情況下直接刪除data/protocol文件夾重啟就可以解決,但是我們使用的是集群部署的模式,嘗試刪除此文件夾重啟后問題依舊存在。
經(jīng)過對比發(fā)現(xiàn)集群節(jié)點(diǎn)的元數(shù)據(jù)是不正常的
{
"lastRefreshTime": 1648556157101,
"raftMetaData": {
"metaDataMap": {
"naming_persistent_service": {
"leader": "192.168.96.77:7848",
"raftGroupMember": [
"192.168.96.77:7848",
"192.168.96.79:7848",
"192.168.96.82:7848"
],
"term": 5
}
}
},
"raftPort": "7848",
"version": "2.0.3"
}下面才是正常的元數(shù)據(jù)
{
"lastRefreshTime": 1648604205057,
"raftMetaData": {
"metaDataMap": {
"naming_instance_metadata": {
"leader": "192.168.3.156:7852",
"raftGroupMember": [
"192.168.3.156:7852",
"192.168.3.156:7848",
"192.168.3.156:7850"
],
"term": 29
},
"naming_persistent_service": {},
"naming_persistent_service_v2": {
"leader": "192.168.3.156:7852",
"raftGroupMember": [
"192.168.3.156:7852",
"192.168.3.156:7848",
"192.168.3.156:7850"
],
"term": 29
},
"naming_service_metadata": {
"leader": "192.168.3.156:7852",
"raftGroupMember": [
"192.168.3.156:7852",
"192.168.3.156:7848",
"192.168.3.156:7850"
],
"term": 29
}
}
},
"raftPort": "7848",
"readyToUpgrade": true,
"version": "2.0.4"
}雖然本地的版本和線上的版本不一致,但是可以看出來正常的nacos集群選舉出來的元數(shù)據(jù)有naming_persistent_service、naming_service_metadata、naming_instance_metadata這三個字段同時出現(xiàn)的。
所以大概可以猜到是我們線上的nacos選舉出現(xiàn)了問題。
檢查了線上的各個端口后并沒有發(fā)現(xiàn)端口不通的問題,經(jīng)過查找資料,我認(rèn)為應(yīng)該是多個網(wǎng)卡導(dǎo)致的nacos識別網(wǎng)卡不正確導(dǎo)致的問題。
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Java 超詳細(xì)圖解集合框架的數(shù)據(jù)結(jié)構(gòu)
什么是集合框架呢?集合框架是為表示和操作集合而規(guī)定的一種統(tǒng)一的標(biāo)準(zhǔn)的體系結(jié)構(gòu)。最簡單的集合如數(shù)組、列表和隊列等,任何集合框架一般包含:對外的接口、接口的實現(xiàn)和對集合運(yùn)算的算法2022-04-04
Spring?Boot?使用觀察者模式實現(xiàn)實時庫存管理的步驟
在現(xiàn)代軟件開發(fā)中,實時數(shù)據(jù)處理非常關(guān)鍵,本文提供了一個使用SpringBoot和觀察者模式開發(fā)實時庫存管理系統(tǒng)的詳細(xì)教程,步驟包括創(chuàng)建項目、定義實體類、實現(xiàn)觀察者模式、集成Spring框架、創(chuàng)建RESTful?API端點(diǎn)和測試應(yīng)用等,這將有助于開發(fā)者構(gòu)建能夠即時響應(yīng)庫存變化的系統(tǒng)2024-09-09
Java常用正則表達(dá)式驗證工具類RegexUtils.java
相信大家對正則表達(dá)式一定都有所了解和研究,這篇文章主要為大家分享了Java 表單注冊常用正則表達(dá)式驗證工具類,具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-11-11
在Java中Collection的一些常用方法總結(jié)
今天給大家?guī)淼闹R是關(guān)于Java的,文章圍繞著Java中Collection的一些常用方法展開,文中有非常詳細(xì)的介紹及代碼示例,需要的朋友可以參考下2021-06-06
Java如果通過jdbc操作連接oracle數(shù)據(jù)庫
這篇文章主要介紹了Java如果通過jdbc操作連接oracle數(shù)據(jù)庫,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-09-09
spring-boot-maven-plugin?配置有啥用
這篇文章主要介紹了spring-boot-maven-plugin?配置是干啥的,這個是SpringBoot的Maven插件,主要用來打包的,通常打包成jar或者war文件,本文通過示例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下2022-08-08

