elasticsearch 单节点搭建与爬坑记录
虚拟机或者云服务器(这里用的是阿里云ECS)
linux---centos7
安装完毕的jdk
相应的安装包(在https://www.cnblogs.com/G-Aurora/p/13099459.html中有快速下载的镜像站)
ps.下文主要指出主要注意的地方,步骤按照标注的数字来即可(编写此文时使用的是市面上多数新版参考书所使用的Elasticsearch5.x版)
首先需要高度关注的是文件夹的“归属”和权限。
Elasticsearch在Linux下只能通过root用户启动。并且为了尽量避免解压缩后再次回头修改文件夹的”归属“,我建议使用新建的用户解压安装包,这样解压缩后的文件的归属就直接归属于新用户。
创建新用户
若出现如下报错就是需要解决文件夹归属问题

详见:https://blog.51cto.com/u_15127626/2734788 中的 “为文件更改归属&赋权”
解压缩安装包
我个人的建议是要根据自己机器的实际情况判断是否需要更改,不足的就改,有余的可以不改(以root用户修改)
增加最大文件数
所有配置完成后启动出现:
那是因为配置没有生效,我们可以使用
来进行检验,如果小于等于65535,那么通过
使配置生效,再次使用ulimit -Hn进行检验即可
哈哈,但是还是有可能报相同的错误
例如在我的启动过程中,我是使用xshell同时开了为root和es两个用户开了两个窗口,当我在root下修改了limits.conf并ulimit -Hn 65536后,分别使用root和es使用ulimit -Hn进行检验,发现两个用户的返回结果不一样,es的还是默认的65535
此时你可以选择
重启
在返回了已更改的ulimit -Hn结果的用户下(root),切换为es再进行启动,(当然后面的配置要完成)。Great,you get it.
增大最大进程数
在我的ECS机器上只发现了20-nproc.conf文件,配置参数有余,而且应该不用手动创建90-nporoc.conf文件(后来事实证明也是如此)
拓展阅读:https://yq.aliyun.com/articles/238584
需要考虑修改nproc的情况 :
Cannot create GC thread. Out of system resources
java.lang.OutOfMemoryError: unable to create new native thread
增加虚拟内存
记得
在es用户下进入elasticsearch/bin
使用
即可启动
通过curl
任意用户使用jps
https://blog.51cto.com/u_15127591/2802143