前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Elasticsearch 快照到 HDFS 遇到的 PrivateCredentialPermission 问题及解决方法

Elasticsearch 快照到 HDFS 遇到的 PrivateCredentialPermission 问题及解决方法

作者头像
CG国斌
发布2019-05-26 14:41:08
8470
发布2019-05-26 14:41:08
举报
文章被收录于专栏:维C果糖维C果糖

文章目录
  • 问题背景
  • 问题描述
  • 解决方法

问题背景

在 Elasticsearch 集群中配置了 HDFS 插件,用于存储集群的索引快照。

问题描述

在 HDFS 存储库创建成功之后,尝试创建索引快照的时候,遇到了如下问题:

private-credential-permission
private-credential-permission

如上图所示,在执行创建快照的命令时,抛出了repository_exception异常,但也给出了一串原因:

代码语言:javascript
复制
"reason 4" : "[test541to660] could not read repository data from index blob"

"reason 3" : "com.google.protobuf.ServiceException: java.security.AccessControlException: access denied (\"javax.security.auth.PrivateCredentialPermission\" \"org.apache.hadoop.security.Credentials\" \"read\")"

"reason 2" : "java.security.AccessControlException: access denied (\"javax.security.auth.PrivateCredentialPermission\" \"org.apache.hadoop.security.Credentials\" \"read\")"

"reason 1" : "access denied (\"javax.security.auth.PrivateCredentialPermission\" \"org.apache.hadoop.security.Credentials\" \"read\")"

从下向上看,显然,最根本的原因在于javax.security.auth.PrivateCredentialPermission,没有read权限。

解决方法

实际上,每个 Java 应用在启动的时候,都会加载一个安全管理器,其指定了一些安全策略,在没有指定安全管理器的情况下,会默认加载$JAVA_HOME/jre/lib/security目录下的java.policy文件。

java-jre-lib-security
java-jre-lib-security

为了解决上述问题,我们需要做的就是在java.policy文件中,新增一项配置:

  • permission java.security.AllPermission;

具体如下所示,

java-policy
java-policy

在添加完该项配置之后,重新启动 Elasticsearch 集群,再次创建快照,即可成功。

特别地,以下为博主的实践验证,供大家参考

  • 仅修改了 HDFS 集群中所有节点所在服务器的配置,重启 HDFS 集群,未生效;
  • 进而,重启 Elasticsearch 集群,未生效;
  • 进而,修改 Elasticsearch 集群中所有master节点所在服务器的配置,重启master节点,仍未生效;
  • 最后,修改 Elasticsearch 集群中所有节点所在服务器的配置,重启 Elasticsearch 集群,问题解决。

因此,博主算是把 Elasticsearch 集群和 HDFS 集群中所有节点所在服务器的配置都修改了一遍,这才解决了上面的权限问题。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019年04月11日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 文章目录
  • 问题背景
  • 问题描述
  • 解决方法
相关产品与服务
Elasticsearch Service
腾讯云 Elasticsearch Service(ES)是云端全托管海量数据检索分析服务,拥有高性能自研内核,集成X-Pack。ES 支持通过自治索引、存算分离、集群巡检等特性轻松管理集群,也支持免运维、自动弹性、按需使用的 Serverless 模式。使用 ES 您可以高效构建信息检索、日志分析、运维监控等服务,它独特的向量检索还可助您构建基于语义、图像的AI深度应用。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档