我有一个小型集群,其中6个64位计算机安装了cloudera manager(CM),运行正常。我想在这个集群中添加一组32位机器作为datanode。 根据CM doc,不可能在管理器上安装32位机器。另一方面,我可以在这些32位机器上手动安装CDH4。 无论如何我可以将所有机器连接在一起吗?
答案 0 :(得分:0)
是的,即使64位计算机已经安装了cloudera Manager,也可以在同一个集群上连接32位和64位计算机。
所以基本上你需要在每个32位主机上下载并安装32位机器的cloudera软件包:
sudo yum --nogpgcheck -y localinstall cloudera-cdh-4-0.i386.rpm
然后安装hadoop-hdfs-datanode
:
sudo yum -y install hadoop-hdfs-datanode
如果要将/ my-hdfs-dir目录分配给hdfs,请确保hdfs
是此目录的所有者(对于每个32位主机):
chown -R hdfs /my-hdfs-dir
您需要将32位主机添加到允许的主机列表中:dfs_hosts_allow.txt。在我的情况下,此文件位于/var/run/cloudera-scm-agent/process/847-hdfs-NAMENODE
。基本上,如果你转到/var/run/cloudera-scm-agent/process/
,你会找到一个进程列表,你需要修改最近的NAMENODE进程。要考虑新节点刷新节点:
sudo -u hdfs hdfs dfsadmin -refreshNodes
您还需要配置每个32位主机。最简单的方法是从一个现有的64位从站复制core-site.xml
和hdfs-site.xml
个文件。您将在从属设备的
/var/run/cloudera-scm-agent/process/xxx-hdfs-DATANODE
中找到这些文件。您可以评论包含要复制文件的药膏名称的所有属性(这些似乎不是必需的)。
修改文件后,复制/etc/hadoop/conf
中的所有32位主机。
您现在可以在32位主机上启动hdfs:
sudo service hadoop-hdfs-datanode start
您可以通过浏览master_ip:50070
来检查是否安装了新的datanode。
不幸的是,我认为没有办法在cloudera manager web ui中看到这些新机器。如果有人知道解决方案,那就非常受欢迎了。