gpt4 book ai didi

hadoop - Hiveserver2:无法创建/更改scratchdir权限到777:无法创建FileClient

转载 作者:行者123 更新时间:2023-12-02 21:40:58 27 4
gpt4 key购买 nike

我正在运行MapR社区版Hadoop集群(M3)。

不幸的是,HiveServer2服务崩溃了,并且根据/opt/mapr/hive/hive-0.13/logs/mapr/hive.log中的日志文件,临时目录的权限存在问题:

2015-02-24 21:21:08,187 WARN  [main]: server.HiveServer2 (HiveServer2.java:init(74)) - Failed to create/change scratchdir permissions to 777: Could not create FileClient java.io.IOException: Could not create FileClient

我使用 hive -e 'set;' | grep scratch检查了临时目录的设置:
hive.exec.scratchdir=/user/mapr/tmp/hive/
hive.scratch.dir.permission=700

我注意到 hive.scratch.dir.permission设置为700,并且错误消息表明它希望将其更改为777。但是,根据文件系统, /mapr/my.cluster.com/user/mapr/tmp具有777权限,并且属于mapr用户。
mapr@hadoop01:/mapr/my.cluster.com/user/mapr/tmp$ ls -al
total 2
drwxr-xr-x 3 mapr mapr 1 Feb 22 10:39 .
drwxr-xr-x 5 mapr mapr 3 Feb 24 08:40 ..
drwxrwxrwx 56 mapr mapr 54 Feb 23 10:20 hive

从文件系统权限来看,我希望映射器用户可以对此文件夹执行任何操作,因此不理解错误消息。

我很想知道以前是否有人看过这个,如果是这样,您是如何解决的?

更新:

我查看了 source code,并在警告之前注意到一些相关的注释:
// When impersonation is enabled, we need to have "777" permission on root scratchdir, because
// query specific scratch directories under root scratchdir are created by impersonated user and
// if permissions are not "777" the query fails with permission denied error.

我在hive-site.xml中添加了设置以下属性:
<property>
<name>hive.scratch.dir.permission</name>
<value>777</value>
</property>

<property>
<name>hive.exec.scratchdir</name>
<value>/tmp/hive/</value>
</property>

...并以777权限在HDFS中创建了 /tmp/hive/文件夹:
mapr@hadoop01:~$ hadoop fs -ls -d /tmp/hive
drwxrwxrwx - mapr mapr 0 2015-02-27 08:38 /tmp/hive

尽管这看起来很有希望,但我仍然在 hive.log中得到了同样的警告。

最佳答案

更新/ tmp / hive HDFS目录的权限,将其设置为777:

  hadoop fs -chmod 777 /tmp/hive

或删除/ tmp / hive,即使删除临时文件也仍会创建它们。
hadoop fs -rm -r /tmp/hive;  
rm -rf /tmp/hive

关于hadoop - Hiveserver2:无法创建/更改scratchdir权限到777:无法创建FileClient,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28753538/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com