使用EBS在Amazon Web服务上设置Hadoop集群

时间:2017-07-28 16:44:50

标签: apache amazon-web-services hadoop hdfs impala

我想知道如何通过AWS设置一个hadoop集群(比如5个节点)。我知道如何在EC2上创建集群,但我不知道如何面对以下挑战。

  1. 如果我丢失了我的现场实例,会发生什么。如何保持群集的运行。
  2. 我正在使用Size 1TB的一些数据集。是否可以相应地设置EBS。如何在此方案中访问HDFS。
  3. 任何帮助都会很棒!

2 个答案:

答案 0 :(得分:0)

根据您的要求,这些建议会发生变化。但是,假设有2个Master和3 Worker设置,您可以将r3实例用于主节点,因为它们是内存密集型应用程序优化的并且用于工作节点的d2实例。 d2实例具有多个本地磁盘,因此可以承受一些磁盘故障,同时仍能保证数据安全 要回答您的具体问题,

  1. 将Hadoop机器视为任何Linux应用程序。如果您的普通centOS现场实例丢失会发生什么? Hwnce,通常建议使用保留实例。
  2. Hadoop通常通过维护3个副本并以128或256 MB块的形式在工作节点上分发数据来存储数据。因此,您将拥有3TB数据来存储三个工作节点。显然,在计算空间需求时你必须考虑一些开销。

答案 1 :(得分:0)

您可以使用AWS的EMR服务 - 它专门针对EC2实例上的Hadoop群集而设计。 它完全托管,并预装了Hadoop所需的所有服务。

关于你的问题:

hadoop中有三种主要类型的节点:

Master - 单个节点,不需要发现它。

核心 - 处理任务并拥有部分HDFS的节点

任务 - 处理任务但没有HDFS任何部分的节点

如果任务节点丢失(如果它们是定点实例),则群集将继续正常工作。

关于存储,EMR中的默认复制因子如下:

1表示集群<四个节点

2 for clusters<十个节点

所有其他集群

3

但你可以改变它 - http://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-hdfs-config.html