2011-07-30 44 views
2

我正试图在NFS的同一局域网上的5台机器上安装hadoop集群。我面临的问题是,一台机器上的hadoop副本会复制到所有机器上,所以我无法为每个从机提供专有的属性。由于这个原因,我得到了“无法创建锁定”类错误。常见问题表明NFS不应该被使用,但我没有别的选择。 有没有一种方法,我可以指定属性,大师应该从其中选择位置1的配置文件,slave1应该从位置2中选择其配置文件.....NFS上的Hadoop集群

+0

Hadoop旨在运行每个节点都有自己的本地连接的磁盘。任何使用共享NFS系统的大型Map/Reduce作业都可能表现不佳。即使在我们拥有8个本地驱动器的集群中,我们也可以获得IO等待(到目前为止,12个主轴节点已经运行良好)。 – cftarnas

+0

我需要这个来测试我公司产品的一些功能。我不打算将此设置用于任何地图/缩小的东西,这仅用于测试目的。 –

回答

1

只需要清楚,计算机配置节点和HDFS存储。您的问题似乎只是配置的存储空间。这可以并且应该在本地完成,或者至少让每台机器根据一些本地标识的配置映射到符号链接(例如Mach01 - >/etc/config/mach01,...)。

(修订1)关于符号链接下面的评论/问题:首先,我要承认这不是我可以立即解决的问题。有2种方法我看到:

  1. 有一个脚本(例如,在启动时或启动的Hadoop的包装)的机器上确定主机名(如hostname -a') which then identifies a local symlink (e.g.在/ usr /本地/ hadoopConfig')到正确的目录NFS目录结构。
  2. 根据本地计算机的主机名设置一个环境变量la HADOOP_HOME,并让各种脚本对其进行处理。

虽然#1应该工作,它传达给我的方法,而不是一个,我设置了,而且我是有点担心的符号链接事件,该主机配置错误(会发生这种情况) 。方法#2看起来更健壮。

+0

你能详细介绍一下sym链接的东西吗?这是否意味着我可以在不同的机器上拥有相同的位置,成为其他位置的符号链接?例如,我可以在机器1和2上分别指向/ home/temp1和/ home/temp2的符号链接/ home/temp吗?这将解决我的问题! –

+0

在回答中处理比评论更容易,所以我会修改答案。 – Iterator

+0

即使我更倾向于使用#2 –