【问题标题】:Hadoop on Amazon Cloud亚马逊云上的 Hadoop
【发布时间】:2011-11-07 19:12:49
【问题描述】:

我正在尝试在 Amazon Cloud 上进行设置以运行一些 hadoop MapReduce 作业,但我正在努力成功创建集群。我已经下载了 ec2 文件,拥有我的证书和密钥对文件,但我相信是 AMI 给我带来了麻烦。如果我尝试运行具有一个主节点和 n 个从节点的集群,我会使用标准兼容的 AMI 启动 n+1 个实例,然后在终端中运行代码“hadoop-ec2 启动集群名称 n”。主节点成功,但是从节点开始启动时出现错误,说“缺少参数-h(AMI丢失)”,我不完全确定如何进行。

另外,我的一些工作需要更改 hadoops 参数设置(特别是 mapred-site.xml 配置文件),是否可以更改此文件,如果可以,我如何访问它?亚马逊机器上是否已经安装了 hadoop,并且该文件可以访问和更改?

谢谢

【问题讨论】:

    标签: amazon-ec2 hadoop mapreduce amazon amazon-ami


    【解决方案1】:

    你试过Amazon Elastic MapReduce吗?这是一个简单的 API,可按需启动指定大小的 Hadoop 集群。

    这比手动创建自己的集群更容易。

    但是,一旦作业流程默认完成,它就会关闭集群,在 S3 上留下输出。如果您需要做的只是做一些处理,这可能是要走的路。

    如果您需要永久存储 HDFS 内容(例如,如果您在 Hadoop 之上运行 HBase),您实际上可能需要在 EC2 上拥有自己的集群。在这种情况下,您可能会发现 Cloudera 为 Amazon EC2 提供的 Hadoop 分发版很有用。

    可以使用EC2 Bootstrap Actions更改将要启动的节点上的 Hadoop 配置:

    问:如何为我的工作流程配置 Hadoop 设置?

    Elastic MapReduce 默认 Hadoop 配置适用于大多数工作负载。但是,根据您的作业流程的特定内存和处理要求,调整这些设置可能是合适的。例如,如果您的作业流任务是内存密集型的,您可以选择每个核心使用更少的任务并减少您的作业跟踪器堆大小。对于这种情况,预定义的引导操作可用于在启动时配置您的作业流程。有关配置详细信息和使用说明,请参阅开发人员指南中的配置内存密集型引导操作。提供了一个额外的预定义引导操作,允许您将集群设置自定义为您选择的任何值。有关使用说明,请参阅开发人员指南中的 Configure Hadoop Bootstrap Action

    关于您启动集群的方式,请说明:

    如果我尝试运行具有一个主节点和 n 个从节点的集群,我会使用标准兼容的 AMI 启动 n+1 个实例,然后在终端中运行代码“hadoop-ec2 launch-cluster name n”。主节点成功,但是从节点开始启动时出现错误,说“缺少参数-h(AMI丢失)”,我不完全确定如何进行。

    您究竟是如何尝试启动它的?您使用的究竟是什么 AMI?

    【讨论】:

    • 首先,我使用了我能找到的任何 AMI。我在终端中运行了一段代码,例如“ec2-describe-images -o amazon”,并选择了任何 AMI 可以工作的代码;然后使用“ec2-run-instances amixxxxxx -n 5 -k keypair”启动具有此 AMI 的实例,最后尝试使用“hadoop-ec2 启动集群名称 4”启动集群(这是用于具有 4 个从属的集群节点)。老实说,我对云很陌生,并不知道自己在做什么。
    • 我要更改的参数是hadoop的作业参数,例如io.sort.mb(用于在map和reduce阶段之间排序的缓冲内存量)等......它们是通过更改存储在 hadoop 文件夹中的文件 (mapred-site.xml) 来控制。
    • @Jonathan Viccary 好的,我明白了,您正在使用来自 Hadoop 的 src/contrib/ec2/bin 的“hadoop-ec2”脚本。如果您想以这种方式启动 hadoop 集群...我查看了脚本,发现它会自动启动实例——您不必手动调用 ec2-run-instances。但是你必须配置它:wiki.apache.org/hadoop/AmazonEC2#Setting_up
    • 其实hadoop-ec2会在某个bucket中搜索合适的图片。您必须设置 HADOOP_VERSION 和 S3_BUCKET 变量来指定图像。
    猜你喜欢
    • 2015-10-30
    • 2012-11-29
    • 1970-01-01
    • 2014-07-24
    • 2013-01-01
    • 2017-10-18
    • 2013-01-21
    • 1970-01-01
    • 2014-05-10
    相关资源
    最近更新 更多