0
点赞
收藏
分享

微信扫一扫

Elasticsearch5.4.3集群搭建

以下我们在Centos7操作系统上以Elasticsearch5.4.3为例来进行一下安装

环境准备

  • elasticsearch5.4.3

  • JDK环境(此处不再赘述)

开始安装

  • 整体上和单点安装思路一样只是配置文件略有不同,故此处以简单直接的方式进行以下配置

配置文件整体讲解

#集群名称
cluster.name: es-cluster
#节点名称
node.name: master
#这里我们选择risen01只作为master并不作为数据存储节点
node.master: true
node.data: false
# 设置es的日志目录
path.logs: /log/elasticsearch
# 设置es的数据目录
path.data: /data/elasticsearch
# 设置索引的分片数,默认为5,5.0之后就不用了
#index.number_of_shards: 5
# 设置索引的副本数,默认为1,5.0之后就不用了
#index.number_of_replicas: 2
# 当JVM开始写入交换空间时(swapping)ElasticSearch性能会低下,你应该保证它不会写入交换空间
# 设置这个属性为true来锁定内存,同时也要允许elasticsearch的进程可以锁住内存
bootstrap.memory_lock: false
#Centos6不支持SecComp,而默认为true会进行检测导致启动失败
bootstrap.system_call_filter: false
#同时设置bind_host和publish_host上面两个参数
network.host: 192.168.23.1
#设置节点间交互的tcp端口,默认是9300
transport.tcp.port: 9300
#设置是否压缩tcp传输时的数据,默认为false,不压缩
transport.tcp.compress: true
#设置对外服务的http端口,默认为9200
http.port: 9200
#使用http协议对外提供服务,默认为true,开启
http.enabled: true
# 使用head等插件监控集群信息,需要打开以下配置项
http.cors.enabled: true
http.cors.allow-origin: "*"
http.cors.allow-credentials: true
#一个集群中的N个节点启动后,才允许进行恢复处理
gateway.recover_after_nodes: 1
#Recovery Throttling
# 下面这些配置允许在初始化恢复,副本分配,再平衡,或者添加和删除节点时控制节点间的分片分配
# 设置一个节点的并行恢复数
# 1.初始化数据恢复时,并发恢复线程的个数,默认为4
cluster.routing.allocation.node_initial_primaries_recoveries: 4
# 2.添加删除节点或负载均衡时并发恢复线程的个数,默认为2
cluster.routing.allocation.node_concurrent_recoveries: 2
# 设置恢复时的吞吐量(例如:100mb,默认为0无限制.如果机器还有其他业务在跑的话还是限制一下的好)
indices.recovery.max_bytes_per_sec: 20mb
# 注意: 合理的设置以上参数能有效的提高集群节点的数据恢复以及初始化速度
#Discovery
# 设置这个参数来保证集群中的节点可以知道其它N个有master资格的节点.默认为1,对于大的集群来说,可以设置大一点的值(2-4)
discovery.zen.minimum_master_nodes: 1
# 这是一个集群中的主节点的初始列表,当节点(主节点或者数据节点)启动时使用这个列表进行探测
discovery.zen.ping.unicast.hosts: ["es01:9300","es02:9300","es03:9300"]
# es保护机制是否允许删除索引或者正则
action.destructive_requires_name: true
action.auto_create_index: true
# 设置es快照仓库位置
repo.path: ["/data/es_backup"]
  • node.master和node.data说明
# 配置文件中给出了三种配置高性能集群拓扑结构的模式,如下:
# 1.如果你想让节点从不选举为主节点,只用来存储数据,可作为负载器
# node.master: false
# node.data: true
# 2. 如果想让节点成为主节点,且不存储任何数据,并保有空闲资源,可作为协调器
# node.master: true
# node.data: false
# 3. 如果想让节点既不称为主节点,又不成为数据节点,那么可将他作为搜索器,从节点中获取数据,生成搜索结果等
# node.master: false
# node.data: false
具体集群角色分配可查看:https://blog.csdn.net/zwgdft/article/details/54585644
  • path.data说明
# 多个数据存储位置,有利于性能提升
# path.data: /data/elasticsearch/data1,/data/elasticsearch/data2

其它节点

其它节点只需要根据实际情况修改node.name,node.master,node.data,network.host即可

运行和单点一样,遵循非root用户启动

举报

相关推荐

0 条评论