dir.who is not allowed to impersonate hadoop的问题
之前用java做Hadoop相关项目没有遇到这种问题,今天使用python操作HDFS遇到这个问题,首先是权限之类的问题,在core-site.xml中配置可以访问的hosts和groups,
具体:
<property>
<name>hadoop.proxyuser.xxx.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.xxx.groups</name>
<value>*</value>
</property>
注意xxx是管理用户名,然而我配置之后仍然出现not allowed错误,心想如果是我连接的这个用户权限问题,错误不应该是dir.who啊,于是找到core-site.xml加入:
<property>
<name>hadoop.http.staticuser.user</name>
<value>xxx</value>
</property>
指明用户,之后这个错误解决。
如果你可以通过 添加property 设置dfs.permissions为false也可以避免这个错误。