ELK系统系列 1 ——ElasticSearch集群搭建
ElasticSearch集群搭建
背景:
我们要搭建一个ELK系统,目标是用于检索系统和用户画像系统。选用的版本是elasticsearch5.5.0+logstash5.5.0+kibana5.5.0。
ElasticSearch集群搭建步骤:
1.安装java 8以上版本的JDK。
- 从http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 从此网站下载安装1.8版本以上的JDK(注:es再持续更新中,参见官网确定需要的JDK版本)。参见此文的安装步骤:http://blog.****.net/rchm8519/article/details/48721913
- 如果自己独占一台服务器安装环境时可以无需考虑,但是如果自己仅仅是这台服务器上的一个用户的话就需要注意了!(修改/etc/profile和修改~/.bashrc的区别)
2.从es官网下载elasticsearch5.5.0 && 修改配置文件。参见图1、图2。
参数说明:
- cluster.name :所有的cluster.name一致的es实例会加入到一个集群中。
- node.name:该节点在集群中的名字。
- path.data:存储索引数据的位置。注意要挂载到一个磁盘空间大的位置,如果你要索引的数据量足够大的话。
- path.log:存储索引日志得位置。注意要挂载到一个磁盘空间大的位置,如果你要索引的数据量足够大的话。
- network.host:如果集群中有多个节点的话,需要以ip的形式表示。
- http.port:默认端口号是9200,自己指定,端口不冲突即可。
- discovery.zen.ping.unicast.hosts:节点发现功能。
图 1
图 2
3.鉴于elasticsearch不能以root用户权限运行,需要创建用户用于运行ElasticSearch & 给用户赋予需要的目录权限。
3.1 创建用户:
- useradd yongjia.sang
3.2 赋予用户某些目录的权限:
- chown yongjia.sang /sangyongjia -R :$home目录
- chown yongjia.sang /srv/data -R : 写索引数据的目录
- chown yongjia.sang /srv/logs -R : 写索引日志的目录
3.3 修改配置
- /etc/sysctl.conf 文件中添加一句:vm.max_map_count = 262144并执行命令:sysctl -p
- 在yongjia.sang用户下运行命令: ulimit -v unlimited 将虚拟内存改为无限大(不知道在哪个文件中配置,暂时以命令的方式解决这个问题!)
- 注:还有别的配置错误,需自行google解决!
集群中每台机器按照上述方式配置完成后,直接运行./bin/elasticsearch 文件即可启动集群,至此一个elasticsearch的集群就可以运行起来了!es集群的搭建的参数配置确实做的很精简!