一、Cluster
代表一个集群,集群中有多个节点,其中有一个为主节点,这个主节点是可以通过选举产生的,主从节点是对于集群内部来说的. es的一个概念就是去中心化,字面上理解就是无中心节点,这是对于集群外部来说的,因为从外部来看es集群,在逻辑上是个整体,你与任何一个节点的通信和与整个es集群通信是等价的。
cluster.name可以确定你的集群名称,当你的elasticsearch集群在同一个网段中elasticsearch会自动的找到具有相同cluster.name的elasticsearch服务. 所以当同一个网段具有多个elasticsearch集群时cluster.name就成为同一个集群的标识.
配置集群名称,默认是elasticsearch
cluster.name: elasticsearch
二、Node
节点名称同理,可自动生成也可手动配置
node.name: node-1
允许一个节点是否可以成为一个master节点,es是默认集群中的第一台机器为master,如果这台机器停止就会重新选举master.
node.master: true
允许该节点存储数据(默认开启)
node.data: true
配置文件中给出了三种配置高性能集群拓扑结构的模式,如下:
- 如果你想让节点从不选举为主节点,只用来存储数据,可作为负载器
node.master: false
node.data: true
node.ingest: true #默认true
- 如果想让节点成为主节点,且不存储任何数据,并保有空闲资源,可作为协调器
node.master: true
node.data: false
node.ingest: true
- 如果想让节点既不称为主节点,又不成为数据节点,那么可将他作为搜索器,从节点中获取数据,生成搜索结果等
node.master: false
node.data: false
node.ingest: true
- 仅作为协调器
node.master: false
node.data: false
node.ingest: false
每个节点都可以定义一些与之关联的通用属性,用于后期集群进行碎片分配时的过滤
node.rack: r1
默认情况下,多个节点可以在同一个安装路径启动,如果你想让你的es只启动一个节点,可以进行如下设置