为了账号安全,请及时绑定邮箱和手机立即绑定

CentOS 6 ElasticSearch 5.5.x 安装指南

背景介绍

最新稳定版的ES 5.5.x版本对系统环境要求比较苛刻,如果不满足的话,是无法正常启动的。大家可以在ElasticSearch入门学习到如何安装ES实例,这里呢,主要向大家介绍如何解决ES在CentOS 6下无法正常启动的问题。

机器环境
  • CentOS 6.3 x64
  • Oracle JDK 1.8
系统参数要求
  • fd 最低需要65536
  • vm 最低262144
  • max locked memory最低64
系统参数修改脚本

注意 要以root身份执行下面的脚本,执行后要重新登录普通账户启动ES

#!/bin/bash
echo "* soft    nofile  65536" >> /etc/security/limits.conf
echo "* hard    nofile  65536" >> /etc/security/limits.conf
echo "* soft memlock unlimited" >> /etc/security/limits.conf
echo "* hard memlock unlimited" >> /etc/security/limits.conf
echo "vm.max_map_count = 262144" >> /etc/sysctl.conf
sysctl -p
ulimit -l unlimited
JVM参数

ES 5.5.x的JVM参数配置方式和以往2.x等版本不同,它独立出了一个jvm.options的文件在config目录下,我们可以通过修改jvm.options里的参数来指定ES启动需要的JVM环境,比如ES默认是2G堆内存,当内存不足时,我们可以进行提升,如下:

-Xms4g
-Xmx4g

除此之外,我们还可以针对性的做各种调整,这里就不再赘述JVM的各参数用法。

启动报错问题

在CentOS 6下运行ES 5.5.x版本时,可能会遇到如下报错信息:

bound or publishing to a non-loopback or non-link-local address, enforcing bootstrap checks

ERROR: [1] bootstrap checks failed...

[1]: system call filters failed to install; check the logs and fix your configuration or disable system call filters at your own risk

遇到这些错误信息不要慌,这是因为CentOS 6内核不支持SecComp,而ES 5.5.x默认是要执行检测命令的,所以这里我们把这个环境检测禁掉,就可以正常运行了,参数如下:

bootstrap.system_call_filter: false

在配置文件elasticsearch.yml追加即可


总结

ElasticSearch 5.5.x 相对以前的2.x版本,是基于Lucene 6来构建的,它增加了36%的查询速度,增加了71%的索引速度,并且减少了66%的硬盘空间占用,还较少了85%的内存使用,同时还新增IP字段,以支持IP4和IP6,在各方面超越了以往的历史版本,希望大家能够通过学习ElasticSearch入门这门课程,提升自己的核心竞争力,也祝大家能够步步高升,生活愉快^_^。

点击查看更多内容
68人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
JAVA开发工程师
手记
粉丝
946
获赞与收藏
278

关注作者,订阅最新文章

阅读免费教程

感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消