首页 > 解决方案 > 无法访问elasticsearch节点

问题描述

我有一个具有 3 个节点的弹性集群,这些节点位于 2 台机器中。不幸的是,拥有 3 个节点中的 2 个的机器已经崩溃,我无法访问它的数据。现在我只有一个节点无法启动它的工作。它的输出显示错误:

java.lang.IllegalStateException:当本地节点 {elastics01}{f4PtBIkPSACZ_uEht1PnOA}{HtLbgM13RxWZuWMP19DIUA}{192.168.132.40}{192.168.132.40:9300}{cdfhilmrstw}{ml 时,无法以 [discovery.type] 设置为 [single-node] 开始.machine_memory=6246580224, xpack.installed=true, transform.node=true, ml.max_open_jobs=512, ml.max_jvm_size=536870912} 在投票配置 VotingConfiguration{z8C2zvqXQUu5bMwkmi9Wdw,f4PtBIkPSACZ_uEht1AbWUDA8}3hDQAAbWUDA8 中没有法定人数

任何帮助,将不胜感激

标签: elasticsearchnodesquorum

解决方案


如果您正在运行 7.X,并且除非您有快照(备份),否则您将不走运,因为您失去了仲裁

来自https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-discovery-quorums.html;

为确保集群保持可用,您不能同时停止投票配置中的一半或更多节点。只要有超过一半的投票节点可用,集群仍然可以正常工作。这意味着如果有三个或四个符合主节点资格的节点,集群可以容忍其中一个节点不可用。如果有两个或更少的主合格节点,它们必须都保持可用。

这可能非常令人沮丧,但这就是 Elasticsearch 如何使用它的分布式模型,这就是为什么它在文档中明确指出


推荐阅读