根据我对hadoop的高可用性的理解,我们需要一个名称节点和一个备用节点,网络共享存储空间(在两个名称节点之间共享),至少2个数据节点用于运行hadoop集群。
我们可以在运行名称节点的同一台机器上运行dataNode服务器。
可以在运行NameNode或dataNode服务器的计算机上运行。
请提示我是否遗漏了生产hadoop环境所需的任何其他服务。
名称节点的系统要求应该是什么,因为它只处理元数据(CPU密集型的I / O密集型)。 我们正在处理的数据主要是I / O密集型。
答案 0 :(得分:3)
对于Hadoop HA - 您至少需要两台可以运行Namenode和Namenode HA的独立机器。因此理论上你可以拥有至少2台机器的Hadoop HA集群。但这在实际中并没有多大用处。
回答你的另一个问题: 1.您可以在运行Namenode服务的计算机上运行DataNode服务。这是PoC集群中的一般情况,其中您有小型集群(大致为3-7个节点) 注意:作为最佳实践的一部分,您应该使用专用机器作为生产中的Namenode等主服务。
Namenode主要需要RAM,这取决于您在群集中或预期拥有的群集数据大小和数字块。通常,您的查询(CPU或I / O密集型)不会影响namenode系统要求。
有关更多服务详情,请参阅:
http://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-hdfs/HdfsDesign.html http://hadoop.apache.org/docs/current/hadoop-yarn/hadoop-yarn-site/YARN.html