搭建实例
先复制2份解压后的完整目录,将里面的data和log删除.
elasticsearch-6.8.23-node2
elasticsearch-6.8.23-node3
修改3个实例的配置文件:(只列出一份,其他的改一下节点名和监听端口、节点内部通信端口就可以了)
# 同一个集群中每个节点的集群名要一样。
# 集群是由一个或者多个拥有相同 cluster.name 配置的节点组成
cluster.name: swq-es-cluster
# 节点的名称
node.name: node-1
# 是否为数据节点
node.data: true
# 是否可以成为主节点,想成为主节点,首先要先成为候选主节点。
node.master: true
# 集群最大节点数
# node.max_local_storage_nodes: 3
# 监听的地址
network.host: 0.0.0.0
# 监听的端口号
http.port: 9201
# 内部节点之间沟通传输端口
# 这个配置项,在7.x版本就变成了transport.tcp.port
transport.port: 9301
# 其中,端口默认为设置transport.profiles.default.port,如果未设置,则以transport.port为准
discovery.zen.ping.unicast.hosts: ["127.0.0.1:9301", "127.0.0.1:9302", "127.0.0.1:9303"]
# 确定节点在决定开始选举或加入现有集群之前将等待多长时间,默认为3s。大一些可以避免网络原因导致脑裂问题的发生。
discovery.zen.ping_timeout: 8s
# https://www.elastic.co/guide/en/elasticsearch/reference/6.8/modules-node.html#split-brain
# es7.x不用设置了,好像会自动判断。
# 默认为1.这个设置非常重要。可以防止脑裂导致的数据丢失。
discovery.zen.minimum_master_nodes: 2
# es7.x 之后新增的配置,节点发现
# discovery.seed_hosts: ["localhost:9700","localhost:9800","localhost:9900"]
# es7.x 之后新增的配置,初始化一个新的集群时需要此配置来选举master
# cluster.initial_master_nodes: ["node-1", "node-2","node-3"]
使用kibana管理集群
修改kibana.yml配置文件、
# kibana.yml修改以下配置
# 给其中一个节点就可以,会自动发现,等你启动后发现集群节点都正常了,关闭kibana再把别的添加上就可以了。
elasticsearch.hosts: ["http://127.0.0.1:9202"]
# kibana索引名
kibana.index: ".kibana"
# 中文
i18n.locale: "zh-CN"
# 如果有认证用户名和密码的就要设置一下。
#elasticsearch.username: "user"
#elasticsearch.password: "pass"
启动kibana。然后就能看到集群管理