3

所以我对 hadoop 还是有点陌生​​,目前正在 Amazonaws 上建立一个小型测试集群。所以我的问题与集群结构的一些技巧有关,因此可以从远程机器提交作业。

目前我有5台机器。4 基本上是具有 NameNodes、Yarn 等的 Hadoop 集群。一台机器用作管理器机器(Cloudera Manager)。我将描述我对设置的思考过程,如果有人能指出我不清楚的点,那就太好了。

我在想什么是小型集群的最佳设置。所以我决定只公开一台经理机器,并可能用它来通过它提交所有工作。其他机器将看到彼此等,但不能从外部世界访问。我对如何做到这一点有概念性的想法,但我不确定如何正确地做到这一点,如果有人能指出我正确的方向,那就太好了。

另一个重点是,我希望能够从客户端机器(可能是 Windows)通过暴露的机器向集群提交作业。我对这个设置也不是很清楚。我是否需要在机器上安装 Hadoop 才能使用正常的 hadoop 命令,并从 Eclipse 或类似的东西中编写/提交作业。

所以总结一下我的问题是,

  1. 对于小型测试集群来说,这是一个好的设置吗
  2. 如何在没有任何 Hadoop 节点的情况下使用一台暴露的机器将作业提交/路由到集群。
  3. 如何设置客户端计算机以将作业提交到远程集群,以及如何在 Windows 上执行此操作的示例。此外,如果有任何理由不在此设置中使用 Windows 作为客户端计算机。

谢谢,我将不胜感激任何建议或帮助。

4

1 回答 1

0

由于没有回答,我将尝试回答。

1.rest api提交申请:

资源 1(集群应用程序 API(提交应用程序)):https ://hadoop.apache.org/docs/current/hadoop-yarn/hadoop-yarn-site/ResourceManagerRest.html#Cluster_Applications_APISubmit_Application

资源 2:https ://docs.hortonworks.com/HDPDocuments/HDP2/HDP-2.6.5/bk_yarn-resource-management/content/ch_yarn_rest_apis.html

资源 3:https ://hadoop-forum.org/forum/general-hadoop-discussion/miscellaneous/2136-how-can-i-run-mapreduce-job-by-rest-api

资源 4:通过 rest api 运行 MapReduce 作业

2.从客户端提交hadoop作业

资源 1:https ://pravinchavan.wordpress.com/2013/06/18/submitting-hadoop-job-from-client-machine/

3.发送程序到远程hadoop集群

可以将程序发送到远程 Hadoop 集群以运行它。您只需确保在运行实际作业之前已正确设置资源管理器地址、fs.defaultFS、库文件和 mapreduce.framework.name。资源 1:(如何在 java 中使用 yarn api 提交 mapreduce 作业

于 2018-12-04T08:20:29.183 回答