乐趣区

关于elasticsearch:es集群搭建步骤及解决es集群无法形成的问题

搭建 es 集群时,批改或增加 elasticsearch.yml 配置如下:

cluster.name: geingo-elasticsearch
node.name: es-node1
path.data: /usr/local/elasticsearch-7.15.0/data
path.logs: /usr/local/elasticsearch-7.15.0/logs
network.host: 0.0.0.0
http.cors.enabled: true
http.cors.allow-origin: "*"
node.master: true
node.data: true
discovery.seed_hosts: ["192.168.36.9","192.168.36.10","192.168.36.11"]
cluster.initial_master_nodes: ["es-node1"]

注意事项:在三台服务器中,cluster.name 需保持一致,node.name 每台则须要批改(如 es-node1、es-node2),其余配置根本放弃不变即可。

配置实现后此时别离在三台服务器中启动 es,发现每个节点都可能单独拜访胜利,可能拜访 9200 端口,但无奈造成集群。

查看 logs/elasticsearch.log 文件后,发现集群须要 ping 通 9300 端口,然而如果是单节点部署,只须要凋谢 9200 接口即可。

在凋谢三台服务器的 9300 端口后,三台 es 服务器胜利造成集群。

随后通过百度理解到 es 这两个端口的区别:
9200 用于内部通信,基于 http 协定,程序与 es 的通信应用 9200 端口。
9300jar 之间就是通过 tcp 协定通信,遵循 tcp 协定,es 集群中的节点之间也通过 9300 端口进行通信。

总结:如果是单节点的 es,则凋谢 9200 端口即可,如果须要部署 es 集群,则须要同时凋谢 9300 端口作为他们之间的通信。

退出移动版