在linux下安装ES报错问题解决

安装注意事项:

1、安装JDK(ES使用java编写的

2、更改 /config/jvm.options文件中的ES使用内存大小,默认是1G的内存

3、更改 /bin/elasticsearch.yml中的IP地址为本机地址

报错问题  

1、ES需要在非root账户下启动,在root账户下启动报错如下

org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as root
        at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:140) ~[elasticsearch-6.4.3.jar:6.4.3]

解决方案创建新账户:

//创建分组
groupadd jacks
//创建用户
useradd jack -g jacks -p 123456

2、用户权限问题报错,报错如下

Exception in thread "main" java.nio.file.AccessDeniedException: /home/software/elasticsearch-6.4.3/config/jvm.options
        at sun.nio.fs.UnixException.translateToIOException(UnixException.java:84)
        at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)
        at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107)
        at sun.nio.fs.UnixFileSystemProvider.newByteChannel(UnixFileSystemProvider.java:214)
        at java.nio.file.Files.newByteChannel(Files.java:361)
        at java.nio.file.Files.newByteChannel(Files.java:407)
        at java.nio.file.spi.FileSystemProvider.newInputStream(FileSystemProvider.java:384)
        at java.nio.file.Files.newInputStream(Files.java:152)
        at org.elasticsearch.tools.launchers.JvmOptionsParser.main(JvmOptionsParser.java:60)

解决方案:给用户分配权限

chown -R jack:jacks /home/software/elasticsearch-6.4.3

3、elasticsearch用户拥有的内存权限太小,至少需要262144;

[1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]
[2]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

解决方案 

(1)、解决下图问题

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

切换为root用户   执行 vi /etc/security/limits.conf  命令并在文件末尾加上以下内容

* soft nofile 65536
* hard nofile 65536
* soft nproc 4096
* hard nproc 4096

(2)、  解决下图问题

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

 解决方案:

Ⅰ 、切换为root账户设置执行 执行下列命令(不重启系统有效)

  sysctl -w vm.max_map_count=262144

该命令执行后虚拟机,则该设置重启失效

Ⅱ、永久有效方法

在   /etc/sysctl.conf文件最后添加一行 vm.max_map_count=262144

执行 sysctl -p命令 ,使配置生效

执行完上述问题,重启系统(shutdown -r now ),

再次执行启动ES命令,ES即可完美启动

关闭防火墙  systemctl stop firewalld.service,然后用IP地址端口9200访问成功。ES就安装成功了

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值