美文网首页elasticsearch
[ElasticSearch填坑]创建hdfs reposito

[ElasticSearch填坑]创建hdfs reposito

作者: king_wang | 来源:发表于2017-06-17 20:19 被阅读207次

    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
    

    相关文章

      网友评论

        本文标题:[ElasticSearch填坑]创建hdfs reposito

        本文链接:https://www.haomeiwen.com/subject/hbjbqxtx.html