Hadoop从属文件配置

时间:2014-04-25 06:55:23

标签: hadoop

所以我有一台主机和3台从机,主机上的slaves文件有以下条目:

master
slave1
slave2
slave3

我是否必须在所有从机中放置相同的从属文件,或者我应该删除第一行有主机然后放在从机中吗?

3 个答案:

答案 0 :(得分:6)

conf / master文件对应于Secondary Name Node,conf / slaves文件对应于TaskTracker / DataNode。根据群集配置pseudo distributedfully distributed,主/从文件配置会发生变化。在伪分布式模式下运行时,主站/从站将具有localhost,在完全分布式模式下,它们将具有相应的主机名。

这些文件需要存在于主服务器中,而不是存在于从服务器上。根据主/从配置文件的目的检查Apache documentation,这将清楚地显示文件的放置位置。

答案 1 :(得分:0)

仍然需要从属文件

http://hadoop.apache.org/docs/r2.8.5/hadoop-project-dist/hadoop-common/ClusterSetup.html

从文件

在etc / hadoop / slaves文件中列出所有从属主机名或IP地址,每行列出一个。帮助程序脚本(如下所述)将使用etc / hadoop / slaves文件一次在多个主机上运行命令。它不用于任何基于Java的Hadoop配置。为了使用此功能,必须为用于运行Hadoop的帐户建立ssh信任(通过无密码ssh或其他某种方式,例如Kerberos)。

答案 2 :(得分:0)

我刚刚遇到了同样的问题,幸运的是它可以通过这种方式解决(与 my question 的答案相同):

  1. 自定义 core-site.xml 文件以指向主节点(在我的例子中,它有一个名为 nodemaster 的别名)。此文件必须位于主节点和工作节点
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
    <configuration>
        <property>
            <name>fs.defaultFS</name>
            <value>hdfs://nodemaster:9000</value>
        </property>
        <property>
            <name>fs.default.name</name>
            <value>hdfs://nodemaster:9000</value>
        </property>
    </configuration>
</configuration>
  1. 仅此而已!现在当你运行时:
start-dfs.sh
start-yarn.sh

我会自动连接到master