Elasticsearch 安装部署异常处理

官网下载Elasticsearch https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.4.0.tar.gz

官方安装讲解:https://www.elastic.co/guide/en/elasticsearch/reference/current/_installation.html#_installation

 

异常1  org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as root

[2018-09-18T14:17:09,875][WARN ][o.e.b.ElasticsearchUncaughtExceptionHandler] [] uncaught exception in thread [main]
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.0.jar:6.4.0]
	at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:127) ~[elasticsearch-6.4.0.jar:6.4.0]
	at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:86) ~[elasticsearch-6.4.0.jar:6.4.0]
	at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:124) ~[elasticsearch-cli-6.4.0.jar:6.4.0]
	at org.elasticsearch.cli.Command.main(Command.java:90) ~[elasticsearch-cli-6.4.0.jar:6.4.0]
	at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:93) ~[elasticsearch-6.4.0.jar:6.4.0]
	at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:86) ~[elasticsearch-6.4.0.jar:6.4.0]
Caused by: java.lang.RuntimeException: can not run elasticsearch as root
	at org.elasticsearch.bootstrap.Bootstrap.initializeNatives(Bootstrap.java:104) ~[elasticsearch-6.4.0.jar:6.4.0]
	at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:171) ~[elasticsearch-6.4.0.jar:6.4.0]
	at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:326) ~[elasticsearch-6.4.0.jar:6.4.0]
	at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:136) ~[elasticsearch-6.4.0.jar:6.4.0]
	... 6 more

意思很明显  不能使用root账号来启动,需要切换账号

异常2:Exception in thread "main" java.nio.file.AccessDeniedException: /opt/app/elasticsearch-6.4.0/config/jvm.options

Exception in thread "main" java.nio.file.AccessDeniedException: /opt/app/elasticsearch-6.4.0/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 用户名:用户名  文件(目录)名
chmod 755  文件(目录)名

异常3:

ERROR: [3] bootstrap checks failed
[1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]
[2]: max number of threads [3804] for user [centos] 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]
[2018-09-18T14:31:06,938][INFO ][o.e.n.Node               ] [mX0niiJ] stopping ...
[2018-09-18T14:31:07,028][INFO ][o.e.n.Node               ] [mX0niiJ] stopped
[2018-09-18T14:31:07,028][INFO ][o.e.n.Node               ] [mX0niiJ] closing ...
[2018-09-18T14:31:07,037][INFO ][o.e.n.Node               ] [mX0niiJ] closed

翻译内容:

[1]:对于elasticsearch进程的最大文件描述符[4096]过低,增加到至少[65536]
[2]:用户的最大线程数[3804]太低,增加到至少[4096]
[3]:最大虚拟内存区域vm。max_map_count[65530]太低,增加到至少[262144]

 

解决方法  前两个在/etc/security/limits.conf文件中追加配置,centos是当前启动es用户

  

centos hard nofile 65536
centos hard nproc 5000
centos soft nofile 65536
centos soft nproc 5000

后面一个在sysctl.conf文件中添加配置

vm.max_map_count=655360

然后执行

sysctl -p

重启es

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值