elasticsearch单机版安装及安装过程踩的坑整理

  • 作者: 凯哥Java
  • 经验分享
  • 时间:2020-03-06 10:16
  • 612人已阅读
简介 elasticsearch单机版安装及安装过程踩的坑整理环境及版本Linux版本:centos7.3JDK版本:1.8Elasticsearch版本:Linux用户:esuser说明:因为es不能使用root用户安装,所以我们需要创建新用户:esuser.本文中软件:编辑编辑开始安装1:创建es用户useradd用户名.如创建esuser这个用户:useraddesuser编辑给已经创建的用户设置

elasticsearch单机版安装及安装过程踩的坑整理

环境及版本

Linux版本:centos7.3

JDK版本:1.8

Elasticsearch版本:

Linux用户:esuser

说明:因为es不能使用root用户安装,所以我们需要创建新用户:esuser.

本文中软件:

编辑

编辑

开始安装

1:创建es用户

useradd 用户名.如创建esuser这个用户:useradd esuser

编辑

给已经创建的用户设置密码,命令:

passwd 密码。如给刚才创建esuser创建密码为123456.命令:passwd 123456

编辑

创建完成之后,需要重新设置密码。

上传es的安装包

2:Es下载:

https://www.elastic.co/guide/en/elasticsearch/reference

需要注意:es7以后需要高版本的jdk或者openJDK

下图是es7对JDK版本的要求。

编辑

因为凯哥本地的JDK是1.8,所以不能使用ES7+的

凯哥使用ES6.8的。下图是6.8对JDK的要求。

编辑

6.8下载地址:

编辑

3:上传并解压

下载后,使用esuser用户将下载的安装包上传到服务器中。

解压:tar -xzf elasticsearch-6.8.7.tar.gz

切换到解压后的目录:

编辑

4:修改配置信息

说明:以下修改都是在root用户下修改的。而不是es用户下修改的

4.1:修改外网访问:

在eshome/config下elasticsearch.yml文件

如凯哥:eshome就是:/home/esuser/esxxx6.8.7

编辑

修改:elasticsearch.yml

放开network.host。修改成0.0.0.0或者是es服务器机器ip.

network.host: 0.0.0.0

大概在55行:

编辑

说明:如果不修改的话,有可能localhost能访问,但是通过ip访问不了。

在文章后面,凯哥会记录这个坑的。

4.2:修改系统进程最大打开文件数

修改 vi /etc/security/limits.conf

添加如下内容:

* soft nofile 65536

* hard nofile 131072

* soft nproc 4096

* hard nproc 4096

编辑

修改:

vi /etc/security/limits.d/90-nproc.conf

修改:

* soft nproc 4096

ps:因为我的报了这个错误。所以就修改成4096

修改:vi /etc/sysctl.conf

添加下面配置:

vm.max_map_count=655360

并执行命令:

sysctl -p

5:启动es

切换到es的bin目录:

执行:./elasticsearch

当出现如下信息,说明启动成功了。

编辑

通过浏览器访问对应连接:

编辑

访问成功。说明配置成。

关闭es,修改成后台启动模式:./elasticsearch &

总结安装es遇到的坑。

一:ES版本与JDK版本不一致

凯哥在第一次安装ES的时候,打开ES官网看到最新版本是7.6。因为不知道ES与JDK版本有对应关系。本地1.8的JDK。安装的时候,一堆错误。然后各种搜索,查看官网才发现JDK版本不一致导致。于是果断更换ES版本。

解决办法:更换符合自己JDK版本的ES

二:启动的时候提示权限不足

在启动ES的时候提示权限不足

编辑

原因:ES不能使用root用户。

解决方法:创建es用户。

三:ES不能外网访问

更换ES之后,再次安装后,用localhost能够访问,但是通过ip+端口就不能访问了。

解决办法:elasticsearch.yml中第55行。设置host.

四:进程数量限制

错误信息1:max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]

或者是:

max number of threads [1024] for user [lishang] likely too low, increase to at least [2048]

错误信息2:max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

错误1解决:

切换到root用户,编辑limits.conf 添加类似如下内容

vi /etc/security/limits.conf

添加如下内容:

* soft nofile 65536

* hard nofile 131072

* soft nproc 4096

* hard nproc 4096

错误2解决:

解决:切换到root用户修改配置sysctl.conf

vi /etc/sysctl.conf

添加下面配置:

vm.max_map_count=655360

并执行命令:

sysctl -p

附JDK安装:

编辑/etc/profile.命令;

vi /etc/profile

进入编辑模式:

命令:i

export JAVA_HOME=/root/jdk1.8.0_111

export JRE_HOME=${JAVA_HOME}/jre

export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH

export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin

export PATH=$PATH:${JAVA_PATH}

说明:修改JAVA_HOEM =你自己jdk路径

然后复制,到文件最后。如下图:

编辑

Esc :wq!进行保存并强制退出。

让profile立即生效命令:

source /etc/profile

编辑

输入java -version 查看版本号。

如果提示权限不足。修改:

chmod 777 /home/soft/java/bin/java

编辑

说明:/home/soft/java/ 这个目录是你自己Java安装目录哦!

赋权之后,在执行Java -vserion 就可以查看jdk版本号了


Top Top