elasticsearch-1.x 版本直接使用:https://github.com/elastic/elasticsearch-servicewrapper 则没什么问题,按照向导启动便可,最近在弄 elasticsearch-2.0 时,直接把 1.x 下的守护程序 copy 过来后,启动出现问题。其中几个变化有:java
1. es 再也不使用 sigar 来进行监控系统资源了(这里对守护程序无影响)。git
2. elasticsearch 的启动类从 org.elasticsearch.bootstrap.ElasticsearchF 变动到 org.elasticsearch.bootstrap.Elasticsearch,而且在后续版本删除了 ElasticsearchF 类。github
3. 为了安全,再也不建议使用 root 权限来运行 es。bootstrap
这里我目前的解决方案是依然使用 root 权限来启动,非 root 用户下启动暂未验证。方法以下:安全
1. 既然 sigar 没了,先注释掉 sigar。app
2. 改变启动类为:elasticsearch
wrapper.app.parameter.1=org.elasticsearch.bootstrap.Elasticsearch资源
wrapper.app.parameter.2=startit
3. 容许 root 用户运行,并禁止掉类权限验证:io
wrapper.java.additional.1=-Des.insecure.allow.root=true
wrapper.java.additional.2=-Des.security.manager.enabled=false
注:但愿有非 root 用户下运行该守护程序的解决方案的同窗提供下解决方法,在此不胜感激。
不喜欢折腾的同窗直接使用 rpm 安装便可。