ElasticSearch(以下简称ES)7.0之前的版本在集群搭建时需要考虑脑裂的问题,但是7,0以后无需在这方面进行专门设置,集群会通过内部决策选举机制选出合适的master。
ES在 7,0版本前后在discover上有些变化,但是7.X依然向后兼容6.X的配置
ES6.8重要关键配置:
discovery.zen.ping.unicast.hosts: ["node1","node2","node3"]
discovery.zen.minimum_master_nodes:2
ES7.X重要关键配置:
discovery.seed_hosts: ["node-a", "node-b","node-c"]
cluster.initial_master_nodes: ["node-a","node-b","node-c"]
此次实践,主要实现ES新版本集群搭建全过程以及实现冷热和机架感知架构设计搭建,
一、准备工作
1、环境准备
5台虚拟机,网络IP、主机名、jdk1.8以上全部准备好,保证各节点互通。
192.168.100.100 node-a
192.168.100.101 node-b
192.168.100.102 node-c
192.168.100.103 node-d
192.168.100.104 node-e
2、资源准备
推荐在elastic中文社区上下载相关es、kibana、logstash
这里为了体验es从头到尾安装的乐趣,我们选择tar包来安装,生产中通过RPM包,可以省去很多手动配置,
3、解压安装包到/opt
4、由于ES必须是非roo用户运行
所以添加 elastic kibana用户,并增加其 权限 最后效果如下
drwxr-xr-x. 11 elastic elastic 177 3月 17 19:58 elasticsearch
drwxr-xr-x. 15 kibana kibana 285 3月 17 14:40 kibana
5、ES启动前的其他重要配置修改文件描述符
5.1设置环境变量
vim /etc/profile
ulimit -n 65535
##刷新
source /etc/profile
m但是有可能还会报错,
max number of threads [3895] for user [elk] is too low, increase to at least [4096];
#这时需要在 /etc/security/limits.d/20-nproc.conf 添加一下一行
* hard nproc 4096
5.2修改limits.conf配置文件
设置最大文件打开数
有的博客是这样来设置,
在:/etc/security/limits.conf 增加
soft nofile 65536
hard nofile 65536
其实看了官网后很简单
vim /etc/security/limits.conf
elastic - nofile 65535 // elastic 只是es用户名,看你起的什么名了,
验证 ulimit -a