我一直在玩的Cloudera和我定义集群的数量之前,我开始我的工作,然后使用Cloudera的经理,以确保一切运行。
我的工作而不是使用Hadoop是使用消息队列分发工作的新项目,但工作的结果存储在HBase的。 我可能会推出10台服务器来处理作业和存储到HBase的,但我想知道如果我后来决定添加一些工人节点可我很容易(读:可编程)让他们自动连接到正在运行的集群,使他们可以在本地添加以集群的HBase / HDFS?
这是可能的,什么我需要为了做它来学习?
我一直在玩的Cloudera和我定义集群的数量之前,我开始我的工作,然后使用Cloudera的经理,以确保一切运行。
我的工作而不是使用Hadoop是使用消息队列分发工作的新项目,但工作的结果存储在HBase的。 我可能会推出10台服务器来处理作业和存储到HBase的,但我想知道如果我后来决定添加一些工人节点可我很容易(读:可编程)让他们自动连接到正在运行的集群,使他们可以在本地添加以集群的HBase / HDFS?
这是可能的,什么我需要为了做它来学习?
这里是将节点添加到文档的Hadoop和HBase的 。 综观文档,没有必要重新启动集群。 一个节点可以动态地加入。
下面的步骤可以帮助你启动新节点到正在运行的集群。
1> Update the /etc/hadoop/conf/slaves list with the new node-name
2> Sync the full configuration /etc/hadoop/conf to the new datanode from the Namenode. If the file system isn't shared.
2> Restart all the hadoop services on Namenode/Tasktracker and all the services on the new Datanode.
3> Verify the new datanode from the browser http://namenode:50070
4> Run the balancer script to readjust the data between the nodes.
如果你不希望重新启动对NN的服务,当您添加一个新的节点。 我想说提前加名奴隶的配置文件。 因此,他们报告为退役/死节点,直到他们都可用。 按照上述数据节点只有几步。 同样,这不是最好的做法。
如果我理解正确的话,你必须连接到HBase的保存他们的数据工作者你自己的坐标。 因为你需要,你可以有很多那些和他们加入他们可以连接到HBase的(只要他们能看到动物园管理员法定人数)。
如果你是在谈论提高Hadoop集群。 既然你已经使用了Cloudera你可以做,通过了Cloudera管理器REST API或的Java客户端有人为它实施
它可以在不重新启动Hadoop集群来完成。 按照这个文件 ,你可以添加节点在包括文件,使在HDFS-site.xml中的一些变化和mapred-site.xml的文件,就可以实现这一点。 的详细说明中给出的这个文件
更新了使用CDH 5.8.5(Hadoop的2.6)Cloudera的答案 -
要添加新节点群集,请按照ClouderaManager UI这些步骤,