【问题标题】:Hadoop distributed modeHadoop分布式模式
【发布时间】:2015-06-10 01:58:48
【问题描述】:

这个问题可能看起来很琐碎,但我是 Hadoop 新手,目前被一个问题弄糊涂了。

启动守护进程时,如何在从节点上找到相应的文件?

我知道您在适当的文件中指定了主服务器和从服务器,但它如何知道这些节点在文件系统上的位置(安装 Hadoop 的路径)?

我是否应该为此设置类似 HADOOP_HOME(或 HADOOP_PREFIX)的东西?

另外,我读到在 masters 文件中您只指定了辅助名称节点,而名称节点和作业跟踪器被认为位于您从中调用 start-all.sh 的节点上。但是,如果您没有登录该节点,而是登录另一个客户端节点,会发生什么情况?可能我没看懂那部分……

【问题讨论】:

    标签: hadoop


    【解决方案1】:

    hadoop 不同节点上的安装应该几乎相同,因此,您必须在集群的每个节点中指定指向您的 hadoop 安装的 HADOOP_HOME(我也将 HADOOP_PREFIX 指定到同一位置)。

    您的每个节点都应该能够通过 ssh“无密码”模式相互连接,所以我相信您问题的最后一部分没有多大意义;)

    【讨论】:

    • 感谢您的回答。我应该在哪里指定这些变量?我猜在.bashrc?如果是这样,我对以下内容感到困惑 - 当我启动终端时将读取 $HADOOP_PREFIX,但是,这将能够在该机器上知道 Hadoop 在哪里,但是其他机器呢?你是说它必须在同一个位置?你的意思是——主节点需要能够与所有从节点通信?也许我错了,但是如果他们都能够通信,那么需要将很多密钥分发给所有节点(以启用“无密码”通信?
    • $HADOOP_HOME$HADOOP_PREFIX 应该在 .bashrc 中,你是对的。在集群的每个节点中将 hadoop 放在同一个位置非常有用(很多教程使用 /usr/local/hadoop),它会更容易做一些事情。你是对的,你必须在所有节点之间复制几个密钥(主节点和所有从节点,每个从节点也和其他节点)
    猜你喜欢
    • 1970-01-01
    • 2011-02-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多