centos6中安装新版 Elasticsearch 7.x

es出新版了,虽然公司里还是用的老版本,但是本地还是有必要自己安装了玩玩

下载地址:https://www.elastic.co/cn/downloads/elasticsearch

那么一般来说还是建议安装到linux里,当然选择在win和mac也ok,我们这里以linux安装为主

下载完毕以后上传到linux中:

安装es之前,务必安装jdk1.8以上,官方说到openjdk也可以,但是没试过,大家可以自行尝试,以下就是官方的依赖说明,怎么安装jdk的,不多说了。。应该都会

 

解压es的tar包:

 

 随后进入解压后es的目录,如下:

 

依次说一下目录结构吧:

bin:可执行文件在里面,运行es的命令就在这个里面

config:配置文件目录

lib:依赖的jar

logs:日志

modules:模块

plugins:可以自己开发的插件

data,这个目录,没有,自己新建一下:mkdir data,这个作为索引目录 

 

随后进入conf目录,使用vim 修改 elasticearch.yml

 

修改集群名称,默认是elasticsearch,虽然目前是单机,但是也会有默认的

 

 为当前的es节点取个名称,名称随意,如果在集群环境中,都要有相应的名字

 

这是修改数据和日志的存储目录

 

 

设置绑定的ip,和redis一个道理,设置为0.0.0.0以后就可以让任何计算机节点访问到你了 

 

 设置在集群中的所有节点名称,这个节点名称就是之前所修改的,当然你也可以采用默认的也行,目前是单机,放入一个节点即可

 

 

修改完毕后,保存退出vim,随后就准备启动es了,进入到bin目录,运行es:./elasticsearch

这个时候报了一个异常:

java.lang.RuntimeException: can not run elasticsearch as root

很明显,提示说我们无法使用root用户来运行es,这是es的设计,为了安全

那么这个时候就需要创建一个新用户,并且为这个用户添加es目录的操作权限了

切换用户以后,再次运行  ./elasticserch 

此时又报错,来看一下:

java.lang.UnsupportedOperationException: seccomp unavailable: requires kernel 3.5+ with CONFIG_SECCOMP and CONFIG_SECCOMP_FILTER

其实从异常可以看出是不支持的操作系统,主要是 seccomp,那么重新进入 conf 下去配置 elasticsearch.yml 

增加下面这一行配置,用于禁用seccomp

回到bin目录再次启动es,又发现如下3个错误:

 

ERROR: [3] bootstrap checks failed
[1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535]
[2]: max number of threads [1024] for user [lee] is too low, increase to at least [4096]
[3]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

 

那么依次去修改,不过得重新切换到root用户, su root

修改如下文件

添加如下:

* soft nofile 65536

* hard nofile 131072

* soft nproc 2048

* hard nproc 4096

 

vim /etc/security/limits.d/90-nproc.conf 修改此文件 

 改为4096

 

 

改完以后重新切换到非root用户lee下,运行es

这个时候发现已经成功启动了,如下是es的相关信息:

 

 那么现在是前台启动方式,我们需要改为后台启动方式来运行es,这样会更好

能看懂吧?不多说了哈

 

 

那么安装到此完毕!

 

posted @ 2019-05-21 00:38  风间影月  阅读(1594)  评论(0编辑  收藏  举报