我按照说明配置hadoop-2.0.0集群以安装impala。在hdfs-site.xml中,我添加了两个属性“dfs.client.read.shortcircuit”和“dfs.domain.socket.path”(/var/lib/hadoop hdfs/dn\u socket)。
但是当我通过start-dfs.sh启动hadoop集群时,它无法启动datanodes。登录datanode时说“无法stat路径组件:'/var/lib/hadoop hdfs'”。然后手动创建/var/lib/hadoop hdfs,并再次启动hadoop集群。它再次失败,日志说这是该目录的权限问题。好的,很好。我将hadoop hdfs的所有者从root改为ubuntu(ubuntu是机器用户名)。现在终于可以正常工作了。
我只是糊涂了。我做的对吗?我们真的需要自己创建/var/lib/hadoop hdfs并更改该目录的权限或所有者吗?或者我错过了一些配置设置?
3条答案
按热度按时间ddrv8njm1#
确定目录
/var/lib/hadoop-hdfs/
现在可以。brc7rcf02#
我在启动datanodes时也遇到了类似的问题。然后,我发现了这个链接https://github.com/cloudera/impala/wiki/build-prerequisites,其中声明我们需要创建
/var/lib/hadoop-hdfs
并设置相应的权限。这也解决了我的问题。snvhrwxg3#
我在使用cloudera manager时遇到了类似的问题。这是一个试图在“单用户模式”下运行而不是使用root的问题。我认为你在和用户做类似的事情
ubuntu
. 这是一个干净的安装还是升级/上次安装失败?我猜你应该在某个地方运行“ubuntu”。
如果您可以通过手动设置权限使其正常工作,请尝试。我有一种感觉,有很多其他文件的所有者
root
应该归谁所有ubuntu
潜伏在你的系统里。有趣的是,如果服务器中没有关键数据,我发现从旧安装中彻底删除所有文件,然后重新安装新的更容易。