配置Hadoop,HBase和Hive集群

时间:2012-11-12 15:38:22

标签: hadoop hbase hive apache-zookeeper

我是Hadoop,HBase和Hive的新手。我以伪分布模式安装了Hadoop,HBase和Hive,一切正常。 现在我计划用Hive,HBase和ZooKeeper建立一个简单的Hadoop集群(5个节点)。我以前读过几份文件和说明,但我找不到对我的问题的好解释。我不确定,在哪里运行所有守护进程。这是我的考虑:

Node_1 (主)

  • 的NameNode
  • JobTrakcer
  • HBase Master
  • ZooKeeper(独立节点;由HBase管理)


Node_2 (Backup_Master)

  • SecondaryNameNode


Node_3 (Slave1)

  • DataNode1
  • TaskTracker1
  • RegionServer1


Node_4 (Slave2)

  • DataNode2
  • TaskTracker2
  • RegionServer2


Node_5 (Slave3)

  • DataNode3
  • TaskTracker3
  • RegionServer3


我知道,在生产中,建议在奇数个节点(单独的Cluster)上运行ZooKeeper集合。但是对于一个简单的集群,可以设置一个在主节点上运行的独立ZooKeeper节点吗?

另一个问题是关于Hive:我知道Hive是一个Hadoop客户端。我还应该在主节点上安装Hive吗?它有意义吗?

感谢所有提示和评论! 哈坎

注意:我只有5台机器来模拟集群。

3 个答案:

答案 0 :(得分:0)

出于测试目的,我相信您可以在主节点上设置Zookeeper;我确实在同一台服务器上安装了所有这些服务器。

如果群集中有5台计算机,为什么在伪分布式模式下安装hadoop,我不明白你的问题?安装完全分布式模式可能更好。

对于配置单元,似乎必须使用hadoop安装它

Hive uses hadoop that means:

you must have hadoop in your path OR export HADOOP_HOME=<hadoop-install-dir>

答案 1 :(得分:0)

  

对于hive,似乎你必须用hadoop安装它   Hive使用hadoop意味着:   你必须在你的路径中有hadoop或导出HADOOP_HOME =

@iTech:没错。如果你安装了hive,你必须将变量“HADOOP_HOME”设置为你的hadoop安装路径。但这不是问题。正如我所说,我之前在伪分布式模式下使用Hadoop和Hive。

唯一的问题是,我不确定在完全分布式模式下在5节点集群中运行所有守护进程的位置。我很困惑,因为我想一起运行很多工具(Hadoop,HBase和Hive)

希望有人有好的建议......

答案 2 :(得分:0)

如果您计划将所描述的群集用于测试目的,则可以将所有主节点放在同一服务器上。此外,您可以将SecondaryNameNode角色移动到Node_1,因为SecondaryNameNode不是NameNode的备份服务器,它位于make checkpoints of your NameNode。因此,将Node_2用作群集中的另一个“工作”节点,或HiveServer2和Metastore是有意义的。

希望这会有所帮助。