elasticsearch单机版安装及安装过程踩的坑整理
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版本号了

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
-
上一篇
30亿人脸数据AI公司遭遇重大数据泄露,完整客户名单被盗
600多家执法机构使用的人脸识别应用程序Clearview AI遭遇重大数据泄露,完整客户名单在这次泄露中被盗。名单中的客户包括美国警方、执法机构和银行。 2月27日,Clearview AI公司向美国福克斯新闻网证实,有人获得了其所有客户的列表、客户使用的账户数量以及客户进行的搜索数量。据美国有线电视新闻网(CNN)消息,该入侵者没有获得客户的任何搜索记录。 Clearview AI的律师Tor Ekeland在一份声明中表示,安全是公司的首要任务,“不幸的是,数据泄露是生活的一部分。我们的服务器从未被访问过。”他补充说,该漏洞已得到修补,公司将继续加强安全程序。 据《纽约时报》2020年1月报道,Clearwater AI向至少600家美国执法机构提供了最新面部识别系统,其中涵盖从各大主流网站上抓取的30亿张图片数据。使用该系统,只需上传某个人的面部照片,就可以查看他在网上的公开照片,包括照片的地址链接。 Clearview AI由2007年移居美国的澳大利亚人Hoan Ton-That与前纽约市市长Rudy Giuliani的助手Richard Schwartz共同开发。公开资料...
-
下一篇
你写的Java对象究竟占多少内存?
概述Java 作为一个面向对象语言,给我们带来了多态,继承,封装等特性,使得我们可以利用这些特性很轻松的就能构建出易于扩展,易于维护的代码。作为一个Javaer,天天搞“对象”,那你写的对象究竟占用了多少内存呢?我们来看看你的“对象”是如何“败家”的。本文环境:jdk1.8_64Java 对象头内存模型我们先来看看,一个Java 对象的内存模型是怎么样的?由于我们的虚拟机是分为32位和64位,那肯定它们的模型也是有区别的,下面我列出列32位虚拟机和64位虚拟机下的Java对象头内存模型。 因为笔者的本地环境是jdk1.8,64位虚拟机,这里我以64位虚拟机(开启指针压缩)来分析,因为默认情况下,jdk1.8 在64位虚拟机默认开启指针压缩。Java 对象头主要包括两部分,第一部分就是 Mark Word,这也是 Java 锁实现原理中重要的一环,另外一部分是 Klass Word。Klass Word 这里其实是虚拟机设计的一个oop-klass model模型,这里的OOP是指Ordinary Object Pointer(普通对象指针),看起来像个指针实际上是藏在指针里的对象。而 ...
相关文章
文章评论
共有0条评论来说两句吧...