[ElasticSearch填坑]创建hdfs repository: Permission Denied

ElasticSearch作为数据库类软件,提供了宜用的备份还原功能。不过想使用备份功能,必须事先创建repository用于保存snapshot文件。本文记录了在创建hdfs类型的repository时遇到的坑。

HDFS Permission Denied

在创建repository失败,返回错误详情里包含下面内容:

Permission denied: user=esuser, access=WRITE, inode="/user/esuser/repository":hdfs:supergroup:drwxr-xr-x

意思是esuser用户对hdfs的/user/es/repository目录无写权限。各种google,找到原因:我们的hadoop集群未开启用户验证(因为在内网环境中安全上已经相对有保证),在创建repository时就未使用security.principal。在这种情况下,ElasticSearch会使用启动实例的用户esuser来在hdfs创建repository指定的目录,染鹅该用户并没有这个权限。

那么问题来了,怎么解决?2个方案:

  • 方案1: 开启hadoop服务器的Kerberos (KRB5)认证,生成krb5.keytab文件并拷贝到ElasticSearch服务器上。具体步骤自行google。最后创建repository使用security.principal`参数。

  • 方案2: 既然知道是用户权限的原因,那么采用最直接的方法,给该用户开启对于指定目录的读写权限

hdfs dfs –mkdir -p /user/esuser
hdfs dos –chown -R esuser:supergroup /user/esuser
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 首先,我们在使用前先看看HDFS是什麽?这将有助于我们是以后的运维使用和故障排除思路的获得。 HDFS采用mast...
    W_Bousquet阅读 9,714评论 0 2
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,314评论 19 139
  • kerberos 介绍 阅读本文之前建议先预读下面这篇博客kerberos认证原理---讲的非常细致,易懂 Ker...
    PunyGod阅读 20,276评论 7 29
  • 想起以前的家 默默地寻找那一生的爱 父母已不在 家的影像 已刻在了我的脑海 苦苦的追求那一生的情 家人团聚 其乐融...
    笔耕心田阅读 2,586评论 0 0
  • 重拾昨天 乐趣一堆 曾经 每一天相约找美丽去 陶醉 美的故事互相勉励去追 曾经 望着天空一起哭泣至睡 临别说起 亦...
    三人成行9阅读 3,150评论 0 0