apache hadoop,hbase和nutch组件分发4个服务器集群

时间:2014-10-30 07:22:32

标签: apache hadoop hive hbase nutch

我有4个系统。我想抓取一些数据。首先,我需要配置集群。我对组件的放置感​​到困惑。

  1. 我应该将所有组件(hadoop,hive,hbase,nutch)放在一台机器上,并在hadoop中添加其他机器作为节点吗?
  2. 我应该将hbase放在一台机器中,将nutch放在另一台机器中,将hadoop放在第三台机器中,并将机器作为hadoop的奴隶添加吗?
  3. HBase应处于伪分布模式还是完全分布式。
  4. 如果我将其作为完全分布式模式运行,我会在hbase中添加多少个奴隶。
  5. 应该是最好的方法。逐步指导(适用于hbase和hadoop)

2 个答案:

答案 0 :(得分:2)

假设您有4个节点n1,n2,n3和n4。 您可以在分布式模式下安装hadoop和hbase。 如果您使用的是Hadoop 1.x -

n1 - hadoop master[Namenode and Jobtracker]
n2, n3 and n3 - hadoop slaves [datanodes and tasktrackers]

对于HBase,您可以选择n1或任何其他节点作为主节点,因为主节点通常不是CPU /内存密集型,所有Masters都可以在测试设置上部署在单个节点上。但是在生产中,每个Master都有好处在单独的节点上部署。

Lets say n2 - HBase Master, remaining 3 nodes can act as regionservers.

Hive和Nutch可以驻留在任何节点上。 希望这可以帮助;对于测试设置,这应该是好的。


更新 -

对于Hadoop 2.x,由于您的群集大小很小,因此可以跳过Namenode HA部署。 Namenode HA将需要两个节点,每个节点用于活动和备用节点。

一个zookeeper仲裁,它再次需要奇数个节点,因此至少需要三个节点。

日记帐法定数量至少需要3个节点。

但是对于群集而言,这个小型HA可能不是主要问题。所以你可以保持

  

n1 - namenode

     

n2 - ResouceManager或Yarn

其余节点可以充当数据节点,尽量不在纱线节点上部署任何其他节点。

HBase,Hive和Nutch的其余部署将保持不变。

答案 1 :(得分:0)

在我看来,您应该以完全分布式模式安装Hadoop,因此作业可以以并行方式运行并且更快,因为MapReduce任务将分布在4台机器中。当然,Hadoop的主节点应该在一台机器上运行。

如果您需要处理大量数据,最好在一台机器上安装HBase,在3台机器上安装Hadoop。

使用像Cloudera Manager和Hortonworks这样非常友好的GUI的工具/平台,您可以轻松完成上述所有工作。它们将帮助您更好地控制和维护群集,但它们还为群集中发生的每个错误提供运行状况监视,群集分析以及电子邮件通知。

Cloudera经理 http://www.cloudera.com/content/cloudera/en/products-and-services/cloudera-enterprise/cloudera-manager.html

Hortonworks http://hortonworks.com/

在这两个链接中,您可以找到有关如何构建群集的更多指导