1. 程式人生 > >CentOS 6 ElasticSearch 5.5.x 安裝指南

CentOS 6 ElasticSearch 5.5.x 安裝指南

you 不支持 指南 文件 pri 索引 local arch echo

背景介紹

最新穩定版的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入門這門課程,提升自己的核心競爭力,也祝大家能夠步步高升,生活愉快^_^。


作者: 瓦力老師
鏈接:http://www.imooc.com/article/20336
來源:慕課網

CentOS 6 ElasticSearch 5.5.x 安裝指南