【问题标题】:Coexistance of Hadoop MR1 and MR2Hadoop MR1 和 MR2 的共存
【发布时间】:2012-11-12 14:34:17
【问题描述】:

是否可以在同一个集群中同时运行 Hadoop MR1 和 MR2(至少理论上如此)?

如果是,我该怎么做?

【问题讨论】:

    标签: hadoop mapreduce hadoop-yarn


    【解决方案1】:

    理论上,你可以这样做:

    • 在一台机器上运行 DataNode TaskTracker 和 NodeManager
    • 在其他机器上运行 NameNode SecondaryNameNode 和 ResourceManager
    • 具有不同端口的所有进程

    但是,不建议这样做,请参阅cloudera blog:

    “确保您没有尝试在同一组节点上同时运行 MRv1 和 YARN。不支持此操作;它会降低性能并可能导致集群部署不稳定。”

    【讨论】:

      【解决方案2】:

      理论上是的。

      1. 将 tarball 解压到 2 个不同的位置,由不同的用户拥有。

      2. 在两者中,将所有与 mapred/yarn 相关的端口更改为互斥集。

      3. 仅从其中一个位置运行数据节点。

      4. 在两个位置启动与 mapred/yarn 相关的守护进程

      如果可行,请在此处发布。

      【讨论】:

        【解决方案3】:

        对于 MR1 和 MR2,dfs name dir 和 data dir 也应该不同。

        <property>
            <name>dfs.name.dir</name>
            <value>/home/userx/hdfs/name</value>
        </property>
        <property>
            <name>dfs.data.dir</name>
            <value>/home/userx/hdfs/data</value>
        </property>
        

        【讨论】:

          【解决方案4】:

          对 Mapr 来说,这不仅是理论而且是实践,请查看link

          【讨论】:

            【解决方案5】:

            您不需要同时运行两者,只需运行 Hadoop 2.0,它为为 Hadoop 1.0 编写的 MapReduce 应用程序提供了完全的向后兼容性。 API 有一些小的变化,请查看link 以检查是否有任何变化影响您的应用程序。

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 2014-09-12
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2013-01-11
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多