简介

网上有各种ES版本的安装步骤和问题解决方案,但是在安装过程中还是遇到了许多问题,那么今天来整理一份详细的安装过程以及碰到的问题和心得;有什么不对的和问题希望大家留言一起讨论。

  • jdk至少需要在1.8.0_73以上版本。
  • linux的内核版本需要在2.6以上(我用的是centos7.x)

一、下载elasticsearch

cd /usr/local
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.6.7.tar.gz

下载成功日志输出

--2018-10-31 10:36:28--  https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.6.7.tar.gz
Resolving artifacts.elastic.co... 54.235.82.130, 184.72.242.47, 54.235.171.120, ...
Connecting to artifacts.elastic.co|54.235.82.130|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 33789994 (32M) [binary/octet-stream]
Saving to: “elasticsearch-5.6.7.tar.gz”100%[==========================================================>] 33,789,994  7.51M/s   in 4.7s    2018-10-31 10:36:35 (6.83 MB/s) - “elasticsearch-5.6.7.tar.gz” saved [33789994/33789994]

二、解压安装

解压命令

tar -zxvf elasticsearch-5.6.7.tar.gz

解压成功日志输出

[root@iZuf6fj49j7lt0ckj85qurZ ~]# tar -zxvf elasticsearch-5.6.7.tar.gz
elasticsearch-5.6.7/
elasticsearch-5.6.7/lib/
elasticsearch-5.6.7/lib/elasticsearch-5.6.7.jar
elasticsearch-5.6.7/lib/lucene-core-6.6.1.jar
elasticsearch-5.6.7/lib/lucene-analyzers-common-6.6.1.jar
elasticsearch-5.6.7/lib/lucene-backward-codecs-6.6.1.jar
省略..................
elasticsearch-5.6.7/modules/percolator/plugin-descriptor.properties
elasticsearch-5.6.7/modules/percolator/percolator-5.6.7.jar
elasticsearch-5.6.7/modules/aggs-matrix-stats/
elasticsearch-5.6.7/modules/aggs-matrix-stats/plugin-descriptor.properties
elasticsearch-5.6.7/modules/aggs-matrix-stats/aggs-matrix-stats-5.6.7.jar
elasticsearch-5.6.7/plugins/

修改文件夹(方便寻找)

mv elasticsearch-5.6.7 elasticsearch

三、配置文件

1、配置文件说明

 jvm.options         虚拟机参数配置文件配置heap内存一样elasticsearch.yml   主配置文件cluster.name  集群名称,同一个网段自动加入node.name        节点名称http.port     http端口
默认情况下,Elastic 只允许本机访问,如果需要远程访问,可以修改 Elastic 安装目录的config/elasticsearch.yml文件,去掉network.host的注释,将它的值改成0.0.0.0,然后重新启动 Elastic。

2、进入配置文件目录
在memory下添加如下

bootstrap.memory_lock: false
bootstrap.system_call_filter: false

退出保存后执行如下命令:

sysctl -p

3、修改如下文件

vi /etc/security/limits.conf

在文件末尾添加如下代码

# testes为登录服务器的用户名
testes soft nofile 65536
testes hard nofile 65536
testes soft nproc  4096
testes hard nproc  4096

4、创建testes 用户(root用户不能启动elasticsearch)

useradd testes
passwd 你的密码

按提示输入两次密码:你的密码

5、授权

cd /root
sudo chown -R python elasticsearch
sudo chgrp -R python elasticsearch

6、切换用户

su - python

四、启动elasticsearch

1:控制台启动(ctrl+c 后停止):

./bin/elasticsearch

1:控制台启动(ctrl+c 后停止):

./bin/elasticsearch -d

五、访问elasticsearch

http://101.132.243.207:9200/

结果

六、踩坑

1、root 权限下启动elasticsearch 错误

错误信息

[root@iZuf6fj49j7lt0ckj85qurZ elasticsearch]# ./bin/elasticsearch
[2018-10-31T16:06:43,042][WARN ][o.e.b.ElasticsearchUncaughtExceptionHandler] [] uncaught exception in thread [main]
org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as rootat org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:136) ~[elasticsearch-5.6.7.jar:5.6.7]at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:123) ~[elasticsearch-5.6.7.jar:5.6.7]at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:70) ~[elasticsearch-5.6.7.jar:5.6.7]at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:134) ~[elasticsearch-5.6.7.jar:5.6.7]at org.elasticsearch.cli.Command.main(Command.java:90) ~[elasticsearch-5.6.7.jar:5.6.7]at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:91) ~[elasticsearch-5.6.7.jar:5.6.7]at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:84) ~[elasticsearch-5.6.7.jar:5.6.7]
Caused by: java.lang.RuntimeException: can not run elasticsearch as rootat org.elasticsearch.bootstrap.Bootstrap.initializeNatives(Bootstrap.java:106) ~[elasticsearch-5.6.7.jar:5.6.7]at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:195) ~[elasticsearch-5.6.7.jar:5.6.7]at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:342) ~[elasticsearch-5.6.7.jar:5.6.7]at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:132) ~[elasticsearch-5.6.7.jar:5.6.7]... 6 more

由于ElasticSearch可以接收用户的脚本并执行,处于安全性考虑,建议创建一个单独的用户来运行ElasticSearch。当然,可以通过配置来实现root用户启动。

修改bin目录elasticsearch.in.sh文件中追加(不过不建议):

JAVA_OPTS="$JAVA_OPTS -Des.insecure.allow.root=true"
2、max virutal memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

原因:主要是因为ES使用的虚拟内存大小跟linux默认的大小不一样,默认的太小,需要配置更大一点

解决办法:

1、切换到root用户修改配置sysctl.conf
vi /etc/sysctl.conf
添加下面配置:
vm.max_map_count=655360
并执行命令:
sysctl -p

然后,重新启动elasticsearch,即可启动成功。

3、外网访问失败

修改配置elasticsearch.yml
network.host: 0.0.0.0

# Set the bind address to a specific IP (IPv4 or IPv6):
#
#network.host: 192.168.0.1network.host: 0.0.0.0
#
# Set a custom port for HTTP:
#
#http.port: 9200
4、unknown setting [vm.max_map_count] please check that any required plugins a

报错信息

java.lang.IllegalArgumentException: unknown setting [vm.max_map_count] please check that any required plugins are installed, or check the breaking changes documentation for removed settingsat org.elasticsearch.common.settings.AbstractScopedSettings.validate(AbstractScopedSettings.java:293) ~[elasticsearch-5.6.7.jar:5.6.7]at org.elasticsearch.common.settings.AbstractScopedSettings.validate(AbstractScopedSettings.java:256) ~[elasticsearch-5.6.7.jar:5.6.7]at org.elasticsearch.common.settings.SettingsModule.<init>(SettingsModule.java:139) ~[elasticsearch-5.6.7.jar:5.6.7]at org.elasticsearch.node.Node.<init>(Node.java:344) ~[elasticsearch-5.6.7.jar:5.6.7]at org.elasticsearch.node.Node.<init>(Node.java:245) ~[elasticsearch-5.6.7.jar:5.6.7]at org.elasticsearch.bootstrap.Bootstrap$5.<init>(Bootstrap.java:233) ~[elasticsearch-5.6.7.jar:5.6.7]at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:233) ~[elasticsearch-5.6.7.jar:5.6.7]at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:342) [elasticsearch-5.6.7.jar:5.6.7]at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:132) [elasticsearch-5.6.7.jar:5.6.7]at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:123) [elasticsearch-5.6.7.jar:5.6.7]at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:70) [elasticsearch-5.6.7.jar:5.6.7]at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:134) [elasticsearch-5.6.7.jar:5.6.7]at org.elasticsearch.cli.Command.main(Command.java:90) [elasticsearch-5.6.7.jar:5.6.7]at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:91) [elasticsearch-5.6.7.jar:5.6.7]at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:84) [elasticsearch-5.6.7.jar:5.6.7]
[2018-10-31T15:23:15,809][WARN ][o.e.b.ElasticsearchUncaughtExceptionHandler] [] uncaught exception in thread [main]
org.elasticsearch.bootstrap.StartupException: java.lang.IllegalArgumentException: unknown setting [vm.max_map_count] please check that any required plugins are installed, or check the breaking changes documentation for removed settingsat org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:136) ~[elasticsearch-5.6.7.jar:省略。。。。。

原因:在elasticsearch.yml 文件配置了 vm.max_map_count=262144

贡献者

  • IT实战联盟-Line
  • IT实战联盟-咖啡

更多精彩内容可以关注“IT实战联盟”众*号哦~~~

Linux 下安装 Elasticsearch5.6.x 详细步骤以及踩坑解决方案相关推荐

  1. Linux下安装MySQL8.0的详细步骤

    Linux下安装MySQL8.0的详细步骤 第一步:下载安装配置 第二步:修改密码,并设置远程连接(为了可以在别的机器下面连接该mysql) 搞了一台云服务器,首先要干的活就是得安装数据库,在Wind ...

  2. Linux下安装 MySQL 5.7详细步骤

    该篇是本人安装MySQL5.7的全部步骤,以此记录 1.查看linux系统是否安装mysql ,如果未安装执行下面命令应该为空的. rpm -qa|grep -i mysql 使用下面命令删除安装过的 ...

  3. linux下安装部署apollo(详细步骤)

    0.官网流程参考 https://github.com/ctripcorp/apollo/wiki/%E5%88%86%E5%B8%83%E5%BC%8F%E9%83%A8%E7%BD%B2%E6%8 ...

  4. linux下安装redmine2.5.1详细步骤

    yum install -y gcc-c++ patch readline readline-devel zlib zlib-devel libyaml-devel libffi-devel open ...

  5. 大数据基础学习三:Ubuntu下安装VMware Tools超详细步骤及需要注意的问题(以ubuntu-18.04.3、Mware Workstation 15.1.0 Pro为例)

    大数据基础学习三:Ubuntu下安装VMware Tools超详细步骤及需要注意的问题 (以ubuntu-18.04.3.Mware Workstation 15.1.0 Pro for Window ...

  6. CentOS,Ubuntu,Linux下安装yasm-1.3.0详细说明

    Linux下安装yasm-1.3.0详细说明 ①wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz  #下载源码包 ...

  7. Linux离线安装python第三方库详细步骤

    Linux离线安装python第三方库详细步骤 01 查看服务器上的OS版本 02 查看已安装的python版本 03 查看python3支持的whl 04 国内镜像源网站下载whl 05 最后执行 ...

  8. uniapp 引入阿里矢量图标库的详细步骤及踩坑经历

    uniapp 引入阿里矢量图标库的详细步骤及踩坑经历 首先在阿里矢量图标库选择自己喜欢的图标 加购物车如下图 点击右上角的购物车 添加到项目 这里有坑 首先你不选中在线链接 你是看不到 @font-f ...

  9. Ubuntu18.04 + OpenCv 2.4.13安装(亲测有效,内含踩坑解决方案)

    Ubuntu18.04 + OpenCv 2.4.13安装(亲测有效,内含踩坑解决方案) 安装cmake-qt-gui 下载apt包 下载OpenCV并修改一些文件 第一坑:改文件 第二个坑:还是改文 ...

  10. 阿里云ECS云服务器(linux系统)安装mysql后远程连接不了(踩坑)

    转载:https://www.jb51.net/article/159514.htm 用navcat远程连阿里云的数据库死活连接不上.始终报:2003 - Can't connect to MySQL ...

最新文章

  1. 通过http协议访问FTP服务器的搭建,ftp+nginx 图片服务器搭建之后使用http访问进行配置文件的修改
  2. oracle密码加密工具下载,oracle加密工具wrap
  3. linux命令之userdel
  4. 三年Java开发,尚学堂java马士兵全套
  5. 还是畅通工程(克鲁斯卡尔算法+并查集)
  6. mysql c api example_The MySQL C API 编程实例
  7. ie模式下html中的按钮失效,解决ewebeditor编辑器在IE8下按钮失效、点击后没反应的问题...
  8. 通过html备份数据库文件,备份网站文件和数据库
  9. 阿里情书 | 爱情是什么模样?想来想去,都是你的模样
  10. 三星固态硬盘linux驱动,三星固态硬盘驱动NVMe Driver
  11. Java设计模式补充:回调模式、事件监听器模式、观察者模式(转)
  12. 企业地图定位,其实这是免费的!
  13. AIME数学竞赛信息大全
  14. 离技术很近,离生活很远
  15. python编写回文程序上海自来水来自海_2019春Python程序设计练习3(0402--0408)
  16. 智能车常用的上下位机:匿名上位机 V7,TFMiniPlus 激光雷达测距
  17. Autodesk 2013 免费下载 及所有产品product Key(产品密匙)
  18. Mutual Information Neural Estimation梳理
  19. 通过微信小程序看前端
  20. 通过京东商品ID获取京东商品评论数据,京东商品评论API接口,接口说明接入方案

热门文章

  1. openCV之中值滤波均值滤波(及代码实现)
  2. TCP-IP 用户态编程
  3. 虚拟机里Ubuntu编译内核方法
  4. 1079 Total Sales of Supply Chain(25 分)
  5. 显示已暂停_美国大学这类研究生项目真的要凉?盘点美国暂停招生的研究生项目~...
  6. 用python逆序输出字符串中的所有元素_Python中逆序输出字符串的六种方法
  7. python算法常用技巧与内置库
  8. 机器学习笔记----(1)什么是机器学习
  9. hdu1243----最长公共子序列
  10. 生成手写文字图片_如何把手机图片转成PDF文件?这个技巧你一定能学会!