我有一个由master
节点(仅运行namenode)和两个从属组成的集群,即slave1
和slave2
(运行datanode)。现在,我想仅将新硬盘添加到slave1
,并使用它来增加datanode容量。我在互联网上遵循了不同的教程和方法,我理解了如何一般。我的问题是将分区/硬盘驱动器仅添加到slave1
会引发问题,因为hdfs-site.xml
无法找到slave2
中添加的新分区/硬盘驱动器的路径
这就是我在slave1
上做的事情(新磁盘在sdb
上):
fdisk /dev/sdb
来创建分区。该过程没有问题,创建/dev/sdb1
。sdb1
格式mkfs.ext4 /dev/sdb1
。sdb1
/disk1
上挂载mount /dev/sdb1 /disk1
my/user/hdfs/datanode
/disk1
的所有者以授予我的用户/disk1/my/user/
hadoop-daemon.sh stop datanode
添加到/disk1/my/user/hdfs/datanode
字段下的hdfs-site.xml
,使用逗号分隔已存在的其他路径。我在每台机器上都这样做。现在,如果我停止并从主服务器再次启动HDFS,那么dfs.datanode.data.dir
上的数据节点将无法启动,因为它无法找到路径slave2
。我的猜测是:是否可以仅将新分区/硬盘添加到群集中的一个数据节点?我该怎么办?强制在每台机器上创建相同的文件夹?
答案 0 :(得分:1)
如果两个从站在两个单独的硬件上运行,则可以为每个从站创建单独的hdfs-site.xml
。在slave1
上,datanode.data.dir
会列出额外的磁盘,而slave2
则不会有。{/ p>