elasticsearch安装及遇到的问题(CentOS 7.3 64位)

Elasticsearch安装

  1. 使用root用户创建一个其他用户,(elasticsearch不能在root账户下安装)
# 添加一个名字是es工作组
groupadd es
# 添加用户es设置密码elasticsearch并设置工作组es
useradd es -g es -p elasticsearch
  1. 下载elasticsearch包
    https://www.elastic.co/cn/downloads/past-releases 这是elasticsearch的历史版本下载地址
    注意: ES依赖JKD,不同版本依赖不同版本的JKD,所以在选择ES版本的时候要注意这个地方
    由于我是在centos上安装的,我直接用wget下载,我选择的是6.8.1版本
    wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.8.1.tar.gz
    
  2. 安装启动
    1) 下载好之后是个tar.gz压缩包,解压
    # 解压缩包
    tar -xf elasticsearch-6.8.1.tar.gz
    
    2)进入elasticsearch-6.8.1目录
    在这里插入图片描述
    可以先大体看一下bin和config目录中的配置和脚本,我们只需要运行bin目录下的elasticsearch脚本就能启动我们的ES,非常简单

安装过程中遇到的问题汇总

不出意外的话按照上面的方式安装,你是运行不起来的

  • 问题一
    在这里插入图片描述
    这个问题之前安装的时候没有遇见过,不知道具体原因
    解决方式
    修改elasticsearch.yml配置文件,添加xpack.ml.enabled: false

  • 问题二
    为了可以外网访问,我们需要在elasticsearch.yml配置文件中添加network.host: 0.0.0.0
    但是在添加了这个之后会冒出来这么个错误
    在这里插入图片描述
    这里明确指出了三个问题,一个一个解决
    1)错误:max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
    解决办法:
    在/etc/sysctl.conf文件最后添加一行vm.max_map_count=262144

    2)错误:system call filters failed to install; check the logs and fix your configuration or disable system call filters at your own risk
    原因:

    这是在因为Centos6不支持SecComp,而ES5.2.0默认bootstrap.system_call_filter为true进行检测,所以导致检测失败,失败后直接导致ES不能启动。

    解决办法:
    在elasticsearch.yml配置文件中加入以下配置

    bootstrap.memory_lock: false
    bootstrap.system_call_filter: false
    

    3)错误:JVM is using the client VM [Java HotSpot™ Client VM] but should be using a server VM for the best performance
    原因:

    JVM正在使用客户机VM [Java HotSpot™客户机VM],但是为了获得最佳性能,应该使用服务器VM

    解决办法:

    修改JDK中jre/lib/i386/jvm.cfg文件
    原来的文件应该是这样的
    在这里插入图片描述
    把这两个位置调换

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值