ES集群的配置
1.得有三台机器 直接Vm里面copy两台虚拟机就可以 记得修改IP
2.分别在三台机器的elasticsearch下的config修改elasticsearch.yml增加如下配置:
cluster.name是集群的名字 三台机器的这个名字要保持一致
node.name是单台机器的名称 自定义
network.host每台主机的IP
主机可以这么配这两个节点:
node.master :true
node.data :false 不保存数据
从机这么配:两台都配置这个
node.master :false
node.data :true
discovery.zen.ping.unicast.hosts 三台机器都写Master的IP
cluster.name: my-es node.name: node-110 network.host: 192.168.8.88 discovery.zen.ping.multicast.enabled: false 多播自动发现禁用开关(高版本停用了) node.master: false node.data: true discovery.zen.ping.unicast.hosts: ["192.168.1.11"]
3.集群配置中遇到的的问题
我在启动的时候 遇到了一个很大的问题 翻了十几篇博客才找到 分享给大家:
错误提示:
Failed to send join request to master [{node-1}{WbcP0pC_T32jWpYvu5is1A}{2_LCVHx1QEaBZYZ7XQEkMg}
{10.10.11.200}{10.10.11.200:9300}], reason [RemoteTransportException[[node-1][10.10.11.200:9300]
[internal:discovery/zen/join]]; nested: IllegalArgumentException[can't add node {node-2}{WbcP0pC_T32jWpYvu5is1A}
{p-HCgFLvSFaTynjKSeqXyA}{10.10.11.200}{10.10.11.200:9301}, found existing node {node-1}{WbcP0pC_T32jWpYvu5is1A}
{2_LCVHx1QEaBZYZ7XQEkMg}{10.10.11.200}{10.10.11.200:9300} with the same id but is a different node instance]; ]
问题原因:要是部署的时候从一个节点复制elasticsearch文件夹,其他节点可能包含被复制节点的data文件数据,需要把data文件下的文件清空,很大的一个坑