elasticsearch安装的各种坑

elasticsearch简介

ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是第二流行的企业搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。

环境:

1. centos6.5
2. jdk1.8
3. elasticsearch6.3.2

使用命令./bin/elasticsearch启动elasticsearch(es)时,遇到各种问题,方便之后复习,记录在此。

问题1

参考文章,修改 Elastic 安装目录的config/elasticsearch.yml文件,去掉network.host的注释,将它的值改成0.0.0.0。重启后,出现以下问题:

 ParsingException[Failed to parse object: expecting token of type [START_OBJECT] but found [VALUE_STRING]];

这个错就是参数的冒号前后没有加空格,加了之后就好:network.host: 0.0.0.0

问题2

can not run elasticsearch as root

因为我一直使用的root用户,最新的版本安全级别提高了,不允许采用root帐号启动,所以添加一个用户。

#添加一个用户:elasticsearch
$useradd elasticsearch
#给用户elasticsearch设置密码,连续输入2次
$passwd elasticsearch
#创建一个用户组 es
groupadd es
#分配 elasticsearch 到 es 组
usermod -G elasticsearch es
#这里注意下,如果提示用户“es”不存在,那么是因为服务器版本问题,你可以换成 usermod -G es elasticsearch ,也就是用户和用户组对调一下使用。
#这里感谢【武汉|Java|竹木鸟】发现这个问题,并告知我。
#在elasticsearch 根目录下,给定用户权限。-R表示逐级(N层目录) , * 表示 任何文件
chown  -R elasticsearch.es *
#切换到elasticsearch用户
su elasticsearch

问题3

创建了elasticsearch用户后,再次启动,晕,又报错了: Unable to access ‘path.data’ (/soft/elasticsearch/data),果断ls -lrt,原来是没有data文件夹。那就mkdir 呗,当然还得按照问题2中所说,赋予elasticsearch用户权限。

接下来还是遇到了各种问题,不过通过这篇文章基本解决,谢谢博主。有不当之处,新手勿喷,共同学习。

猜你喜欢

转载自blog.csdn.net/qq_19635589/article/details/79853497