多个Elasticsearch节点无法自动组成集群,查看日志发现错误信息:“master_not_discovered_exception”。
原因是运维人员通过克隆虚拟机来获得多台Elasticsearch服务器,这样每个Elasticsearch节点都具有相同的节点ID,因此在组成集群时,无法选举出master节点。
这可以通过以下命令进行验证,列出所有节点ID:
GET /_cat/nodes?v&h=id,ip,name&full_id=true
请注意,由于Elasticsearch集群尚未形成,因此需要单独查询每个节点,即:
curl 192.168.110.111:9200/_cat/nodes?v&h=id,ip,name&full_id=true
curl 192.168.110.112:9200/_cat/nodes?v&h=id,ip,name&full_id=true
......
Elasticsearch节点ID必须是唯一的。要解决这个问题,我们需要删除每个节点上的索引(RPM方式安装的Elasticsearch的索引数据默认位于/var/lib/elasticsearch)。重启Elasticsearch就会重置节点ID。
参考
https://www.656463.com/wenda/jdbhjrjqNotMasterExceptionqgddxc_359
I’m nott that muych of a internet reade to be honest bbut yoiur siters reallly nice, keep it up!
I’ll ggo aheaad aand bookmark your site tto come back in tthe future.
Cheers
I used to be able to find good info from your articles.