集群及排错[node不能加入cluster]"/>
Win10部署ES集群及排错[node不能加入cluster]
简记:elasticsearch在window10上搭建3个节点的集群,便于测试和学习es相关知识。当然有liunx环境安装更快更简单。
一、安装ES,需要两个包,es安装包和es-head管理包和依赖
下载es包:(测试最新版本 Version:7.5.1)
下载es-head包:
/ #注意64位和32位操作系统选择
二、配置与启动
1 下载安装到对应的目录解压(注意创建3个node节点的文件夹,然后把安装包copy进文件夹解压)
2 配置文件elasticsearch.yml,分为node1,node2,node3
2.1 node1在配置文件里添加如下内容
cluster.name: elastic #三个节点名字必须一样
node.name: node-1 #三个节点名字不一样
node.master: true
network.host: 127.0.0.1 #3个节点一样
http.port: 9200 #3个节点不一样(如果在一台机器上部署)
transport.tcp.port: 9300 #3个节点不一样
discovery.zen.ping.unicast.hosts: ["127.0.0.1:9301","127.0.0.1:9302"] #每个节点添加其他两个节点的配置信息http.cors.enabled: true #es-head 需要用,
http.cors.allow-origin: "*"
2.2 安装JDK,安装jdk 8
参考
2.3 安装安装node.js环境,es-head需要
2.4安装 npm,es-head需要该环境
3 启动环境
3.1 (三个节点依次操作)可进入目录双击(如图一)or powershell中执行脚本(推荐用该法,可以看到启动日志方便排查)如图二
3.2 启动es-head
进入es-head解压目录中,执行 grunt server
3.3 测试启动成功与否
三:集群搭建遇到问题:
问题:3个节点加入集群时遇到问题,es-head中只能看到一个node节点的信息,其他两个节点启动正常但是es-head中不展示,用es-head 切换其他两个端口时都能链接(如http://localhost:9201/ or http://localhost:9201/)但是都显示一个节点。
排查:1 用powershell 开启es个节点观察启动日志是否有报错,发现后启动的两个es的节点 node ID [Tdv4ytgFTsGQrf8iFJhqbA]有冲突,每个id是唯一的。
2 为什么会冲突呢?
是因为把es解压后的文件复制了两份(修改配置)做nod2和node3
3 解决问题,删掉node2和node3 ,在node2和node3的文件夹中解压es安装文件,启动成功!
更多推荐
Win10部署ES集群及排错[node不能加入cluster]
发布评论