我们正在运行一个非常小的本地2节点Elasticsearch(7.8.0)集群(一台机器是master / data, 另一个用于副本)在我们网络上的虚拟机上
A,我们发现我们的主机已回退了2个月。起初,我以为副本也已经同步了两个月,但是仔细检查一下,它已经停止与主副本完全通讯了。
我可以ping副本的根以获取tagline: "You Know, for Search"
json,但是当我对_cat/indices/
进行GET操作时,会得到:
{
error: {
root_cause: [
{
type: "master_not_discovered_exception",
reason: null
}
],
type: "master_not_discovered_exception",
reason: null
},
status: 503
}
我已经更新了副本elasticsearch.yml
,以更改群集名称并删除对主节点的任何提及,以尝试使其独立运行,因此我们可以恢复过去的两个月,但没有运气< / p>
有什么想法吗?
令人难以置信-我发现了问题所在。当主机回滚时,这是我们将默认cluster.name
的设置从elasticsearch
更改的时间。我将其更新为应有的状态,一切都同步(正好),每个人都很开心
答案 0 :(得分:0)
在elasticsearhc 7.8中,您无法轻松地从集群中更改或删除主节点,也不能使DataNode独立成为集群。
根据documentation(https://www.elastic.co/guide/en/elasticsearch/reference/current/node-tool.html),应使用elasticsearch-node detach-cluster命令。
private suspend fun myFun() {
viewmodel.getListener()?.collect { myClass->
//do something here
return@collect
}
withContext(Dispatchers.Main) { updateUI() return@withContext }
//the code should flow downwards as usual
}