当开始例如Elasticsearch 5.5时:
main ERROR Could not register mbeans java.security.AccessControlException: access denied ("javax.management.MBeanTrustPermission" "register")
答案 0 :(得分:7)
Oracle Java 1.8.0_131的解决方法是打开文件<jre>/lib/security/java.policy
并将此行添加到grant
部分(即大括号之间):
permission javax.management.MBeanTrustPermission "register";
为什么要解决?正确的解决方案是指定额外的grant
部分,哪些代码应该获得此权限。
答案 1 :(得分:2)
得到了同样的错误,答案就在java.security.AccessControlException when using Ant, but runs ok when invoking java from console
在java.policy文件中附加grant部分
permission javax.management.MBeanTrustPermission "register";
答案 2 :(得分:0)
当从单个实例移动到本地的两个实例时,我遇到了同样的问题。
我尝试过Alice建议的内容。甚至重新安装了Elasticsearch(5.5.0)。 我还将我的Java更新为Oracle提供的最新Linux版本。
什么都没有奏效。然后我发现,我不能只使用elasticsearch-5.5.0 / config目录并将其重命名为elasticsearch-5.5.0 / node1。
所以...我必须保留该config目录并将其克隆到node1 / node2。
即使我在运行时args中配置path.config,ES仍然需要该基线配置目录。
希望这有帮助。
答案 3 :(得分:-1)
我在Ubuntu-16.04系统上遇到了同样的问题。 解: 不允许为“ROOT”用户运行ElasticSeearch服务。这就是使用以下命令更改elasticsearch文件夹的所有权的原因: 转到Elasticseach安装目录
$ sudo chown -R user_name:user_Group elasticsearch-5.5.0
$ / bin中/ elasticsearch
这将启动elasticsearch服务。它完美地形成了我。