我已经在伪分布式模式下安装了hadoop 2.7.2(machine-1)。我想为它添加一个新的datanode以使其成为一个集群。但是问题是这两台机器都有不同的磁盘分区。
我在新数据节点(机器-2)中安装了相同版本的hadoop 2.7.2,也可以在机器上使用ssh.1。在谷歌上搜索了许多网站后,都有共同的教程提到,我们必须在里面有相同的配置文件/etc/hadoop/
文件夹。
如上所述,我在机器1中的现有配置是:
芯-site.xml中
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>/home1/tmp</value>
<description>A base for other temporary directories
<property>
<name>fs.default.name</name>
<value>hdfs://CP000187:9000</value>
</property>
<property>
<name>hadoop.proxyuser.vasanth.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.vasanth.groups</name>
<value>*</value>
</property>
</configuration>
HDFS-site.xml中:
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/home1/hadoop_data/hdfs/namenode</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/home1/hadoop_store/hdfs/datanode</value>
</property>
<property>
<name>dfs.permissions</name>
<value>false</value>
</property>
</configuration>
/home1
是装在machine1中的磁盘。Machine-2安装了两个磁盘,即/ hdd1和/ hdd2。
现在,我应该在新机器(机器2)的hdfs-site.xml
中指定什么才能使用hdd1和hdd2?
所有节点的dfs.data.dir
值是否必须相同?
machine2上的dfs.namenode.name.dir
是否需要hdfs-site.xml
属性(因为它不是名称节点)?
我的简化问题是,还必须复制从属节点中的主节点配置文件吗?请帮我解决这个问题..
答案 0 :(得分:1)
在下面添加datanode检查
将core-site.xml, hdfs-site.xml, mapred-site.xml, yarn-site.xml and hadoop-env.sh
个文件复制到新机器hadoop dir
在/ etc / hosts
在slaves file
(位于/etc/hadoop/
)
正如您所提到的,您有2个硬盘,请在hdfs-site.xml
文件中提及这些位置,如下所示
<name>dfs.datanode.data.dir<name>
<property>/hdd1,/hdd2<property>
答案 1 :(得分:0)
您只需要将整个hadoop文件夹从node1复制到node2。所以在两种配置中都应该指向hdfs:// CP000187:9000。您不必在node2中执行任何添加设置。
在node2中启动datanode(从sbin开始)。你只需要在node2中运行datanode和nodemanager进程
./hadoop-daemon.sh start datanode
要检查datanode是否添加正确,请在node1中运行dfsadmin -report
hadoop dfsadmin -report
输出:
Configured Capacity: 24929796096 (23.22 GB)
Present Capacity: 17852575744 (16.63 GB)
DFS Remaining: 17851076608 (16.63 GB)
DFS Used: 1499136 (1.43 MB)
DFS Used%: 0.01%
Under replicated blocks: 0
Blocks with corrupt replicas: 0
Missing blocks: 0
Missing blocks (with replication factor 1): 0
-------------------------------------------------
Live datanodes (2):