Centos6.5下Elasticsearch的安装与配置

一、Elasticsearch 简介

Centos6.5下Elasticsearch的安装与配置

Elasticsearch 是一个分布式的 RESTful 风格的搜索和数据分析引擎,能够解决不断涌现出的各种用例。作为 Elastic Stack 的核心,它集中存储您的数据,帮助您发现意料之中以及意料之外的情况。
特点: 分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。

二、Elasticsearch 安装

Elasticsearch 需要java环境的支持,所以在安装Elasticsearch之前先要安装jdk,而且需要安装jdk-1.8版本的

yum install -y java-1.8*
安装后查看一下版本号:
java -version

elk官网下载Elasticsearch,本次使用的是5.6.2版本

tar zxvf elasticsearch-5.6.2.tar.gz

启动脚本在elasticsearch-5.6.2/bin 目录下

如果直接使用root身份启动Elasticsearch,则会出现如下的报错:
Centos6.5下Elasticsearch的安装与配置

所以要先给ELK建立一个用户:
groupadd elk
useradd elk -g elk

将之前解压的目录所有者和组修改为elk

chown -R elk.elk /opt/elasticsearch-5.6.2

切换elk身份:

su - elk

启动Elasticsearch:

/opt/elasticsearch-5.6.2/bin/elasticsearch
第一次启动需要初始化,所以会慢点

Centos6.5下Elasticsearch的安装与配置

出现started,则启动成功,端口为9200

ctl+c 即可关闭
Centos6.5下Elasticsearch的安装与配置
netstat -antpl | grep 9200

在浏览器中输入127.0.0.1:9200
Centos6.5下Elasticsearch的安装与配置

安装到这里就ok了,下面我们看看配置。

三、Elasticsearch配置

在安装目录下的conf目录中:
有三个配置文件:

  • elasticsearch.yml es的相关配置
  • jvm.options jvm的相关配置
  • log4j2.properties 日志的相关配置

主要看配置文件elasticsearch.yml的关键配置项:

  • cluster.name 集群的名字
  • node.name 节点名字
  • network.host 网络地址
  • http.port http 端口
  • path.data 数据的存储路径
  • path.log 日志的存储路径

四、Elasticsearch模式

  1. Development 模式:启动时会以warning方式提示配置检查异常
  2. Production 模式 :启动时会以error方式检查配置异常并退出

具体模式的区分是以network.host绑定的端口是否为localhost,如果是,则为Development模式,否则为Production模式。

五、启动常遇到的问题

除了上文提到的root身份启动不了之外,还遇到如下问题:

Centos6.5下Elasticsearch的安装与配置
共报了4个错误

这里就需要修改limits.conf里的限制:
vi /etc/security/limits.conf

添加如下内容:

  • soft nofile 65536
  • hard nofile 131072
  • soft nproc 2048
  • hard nproc 4096

vi /etc/security/limits.d/90-nproc.conf
修改如下内容:
* soft nproc 1024 (将1024修改为2048)

vi /etc/sysctl.conf
添加下面配置:
vm.max_map_count=655360
并执行命令:
sysctl -p

在es的配置文件添加:
bootstrap.system_call_filter: false

这是最基本的安装与配置,而且Elasticsearch要和logstash、kibana、beats,才能显现出威力,更高级的用法和配置,请参考官方文档