下载安装包

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.5.2.zip

开始执行bin/./elasticsearch的时候会报错

java.lang.RuntimeException: can not run elasticsearch as root
at org.elasticsearch.bootstrap.Bootstrap.initializeNatives(Bootstrap.java:106) ~[elasticsearch-5.5.2.jar:5.5.2]
at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:194) ~[elasticsearch-5.5.2.jar:5.5.2]
at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:351) [elasticsearch-5.5.2.jar:5.5.2]
at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:123) [elasticsearch-5.5.2.jar:5.5.2]
at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:114) [elasticsearch-5.5.2.jar:5.5.2]
at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:67) [elasticsearch-5.5.2.jar:5.5.2]
at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:122) [elasticsearch-5.5.2.jar:5.5.2]
at org.elasticsearch.cli.Command.main(Command.java:88) [elasticsearch-5.5.2.jar:5.5.2]
at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:91) [elasticsearch-5.5.2.jar:5.5.2]
at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:84) [elasticsearch-5.5.2.jar:5.5.2]
[2017-08-21T14:22:13,881][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:127) ~[elasticsearch-5.5.2.jar:5.5.2]
at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:114) ~[elasticsearch-5.5.2.jar:5.5.2]
at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:67) ~[elasticsearch-5.5.2.jar:5.5.2]
at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:122) ~[elasticsearch-5.5.2.jar:5.5.2]
at org.elasticsearch.cli.Command.main(Command.java:88) ~[elasticsearch-5.5.2.jar:5.5.2]
at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:91) ~[elasticsearch-5.5.2.jar:5.5.2]
at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:84) ~[elasticsearch-5.5.2.jar:5.5.2]
Caused by: java.lang.RuntimeException: can not run elasticsearch as root
at org.elasticsearch.bootstrap.Bootstrap.initializeNatives(Bootstrap.java:106) ~[elasticsearch-5.5.2.jar:5.5.2]
at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:194) ~[elasticsearch-5.5.2.jar:5.5.2]
at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:351) ~[elasticsearch-5.5.2.jar:5.5.2]
at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:123) ~[elasticsearch-5.5.2.jar:5.5.2]
... 6 more

官方大概的意思是这么说的

永远不要以root用户身份运行Elasticsearch,因为这将允许任何成功的努力绕过其他安全层来在您的服务器上执行任何操作。 如果它检测到它以root身份运行,那么弹性搜索将拒绝启动,但是这是非常重要的,因此它值得双重和三重检查。

所以需要新增普通用户而不要使用root用户

adduser es
passwd es
groupadd notroot

用新用户启动报错:

ERROR: [3] bootstrap checks failed
[1]: max file descriptors [65535] 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]
[3]: system call filters failed to install; check the logs and fix your configuration or disable system call filters at your own risk

修改文件

vi /etc/security/limits.conf

* soft nproc 65536
* hard nproc 65535
* soft nofile 65535
* hard nofile 131072

临时设置:sudo sysctl -w vm.max_map_count=262144
永久修改:
修改/etc/sysctl.conf 文件,添加 “vm.max_map_count”设置
并执行:sysctl -p

在elasticsearch.yml中配置bootstrap.system_call_filter为false,注意要在Memory下面:
bootstrap.memory_lock: false
bootstrap.system_call_filter: false

最新文章

  1. 【代码笔记】iOS-自定义开关
  2. JAVA 自定义状态码
  3. 完成端口(Completion Port)详解(转)
  4. tesseract-orc 合并识别结果
  5. [转]AngularJS: 使用Scope时的6个陷阱
  6. 阿里云开放服务oss的api
  7. js replace如何实现全部替换
  8. 使用Qt实现简单的图片预览效果 good
  9. iOS-NSString-Base64String-Base64原理
  10. 【转】Android Studio安装配置学习教程指南 下载和安装--不错
  11. vmware tools 安装
  12. ES6学习笔记:Module的基本用法
  13. 模拟产生CBC LATCH与buffer busy wait等待事件
  14. PHP mktime函数获取今天的开始和结束时间戳
  15. ASP.NET Core实现强类型Configuration读取配置数据
  16. vue px 转rem
  17. 爱上python之盲注探测脚本
  18. Servlet中的request与response
  19. css命名管理混乱?不妨试试BEM
  20. Connection:Keep-alive

热门文章

  1. X明X源面试题《三》
  2. vfptr(2)
  3. 【BZOJ4716】假摔 二分+暴力
  4. 《从零开始学Swift》学习笔记(Day 35)——会使用下标吗?
  5. ECMAScript/JS 基础知识讲解
  6. 九度OJ 1360:乐透之猜数游戏 (递归)
  7. android 手机设置铃声
  8. jQuery中删除节点方法remove()、detach()、empty()分析
  9. 印象笔记Mac端快捷键
  10. boost之正则表达式