我正在尝试修改YARN容器分配代码。通过容器分配,我的意思是决定将容器放置在集群中的特定机器上。我想编写自己的容器分配代码。首先,我使用YARN在伪分布式模式下运行Hadoop。我试图在源代码中找到相关点。到目前为止,使用print语句,我已经能够查明类hadoop-source-code/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/api/impl/pb/client/ApplicationMasterProtocolPBClientImpl.java#
提前感谢您的帮助。我正在使用提供的Hadoop示例运行yarn作业。作业永远不会完成并停留在“ACCEPTED”状态。查看正在打印的内容,似乎作业正在等待完成——并且客户端不断地探测作业状态。示例作业(来自Hadoop2.6.0):spark-submit--masteryarn-client--driver-memory4g--executor-memory2g--executor-cores4--classorg.apache.spark.examples.SparkPi/home/john/spark/spark-1.6.1-bin-hadoop2.6/lib/spark-exa
我想将一个spark应用程序(只是一个简单的HelloWorld应用程序)部署到我的hadoop集群。在我的Windows机器上使用spark提交,我使用--masteryarn在客户端模式下执行应用程序。连接到hadoop集群是成功的,在集群上的日志文件中可以看到。(hadoopconf文件已经从集群下载下来,保存在客户端windows机器上,环境变量已经设置好)。使用hadoop2.7和spark1.6这是使用的spark-submit命令:>spark-submit--masteryarn--class"SimpleApp"..\..\SimpleApp\target\scala
启动yarn守护进程,启动资源管理器,记录到/opt/hadoop/logs/yarn-root-resourcemanager-Web.out[FatalError]yarn-site.xml:24:1:Theend-tagforelementtype"property"mustendwitha'>'delimiter.localhost:startingnodemanager,loggingto/opt/hadoop/logs/yarn-root-nodemanager-Web.outlocalhost:Error:Couldnotfindorloadmainclassorg.ap
我们最近决定在多个集群(具体版本各不相同)上为HadoopYARNResourceManager和ApplicationTimeline服务器启用GC日志记录,以帮助调查与YARN相关的内存和垃圾收集问题。这样做时,我们想避免两个我们知道可能会发生的问题:当YARNRM或AT服务器因任何原因重启时覆盖日志文件日志使用过多的磁盘空间,导致磁盘被填满当为进程启动JavaGC日志记录时,它似乎会替换任何具有相同名称的文件的内容。这意味着除非您小心,否则您将丢失GC日志记录,也许在您更有可能需要它的时候。如果您让集群运行足够长的时间,日志文件将填满磁盘,除非进行管理。即使GC日志记录目前不是很
我正在通过包括sqoop1.4.6的Cloudera5.8.0使用Hive/Hadoop/Sqoop。我的Hadoop集群有4个Hadoop数据节点,每个节点有16GB内存,并且都在运行ImpalaDaemons和YarnNodeManagers。Yarn服务器与Hue、Hive和Sqoop2一起在具有32GBRAM(具有多种角色)的服务器上运行。使用Sqoop从MySQL数据库导入(从使用Sqoop1的主服务器通过bash脚本导入到增量作业中的parquetfile格式),即使导入只有200行(甚至30行)的表,它似乎也很慢(平均50秒)在一种情况下)。即使在Ubermode中,它也
我有一个简单的工作,就是通过sparksql在hdfs中读取hive。我首先在yarn-client模式下运行它,我没有遇到任何问题。几次之后,我开始通过yarn-cluster模式启动它,但我遇到了这个问题:我有这个hdfs权限错误:Causedby:MetaException(message:org.apache.hadoop.security.AccessControlException:Permissiondenied:user=yarn,access=EXECUTE,inode="/Projects/SNB/directory/Private/table/table_ORC"
我们有一个在HDFS2.7.3上运行的Spark流应用程序,使用Yarn作为资源管理器....在运行应用程序时......这两个文件夹/tmp/hadoop/data/nm-local-dir/filecache/tmp/hadoop/data/nm-local-dir/filecache正在填满,因此磁盘......所以根据我的研究发现,在yarn-site.xml中配置这两个属性会有所帮助yarn.nodemanager.localizer.cache.cleanup.interval-ms2000yarn.nodemanager.localizer.cache.target-si
我想获取在ResourceManager上运行的每个应用程序。我正在使用Yarn自带的RESTAPI,特别是http:///ws/v1/cluster/apps此API调用返回我要查找的结果。但我想按开始时间降序排序。我得到的结果没有按任何特定顺序排序(我认为它是使用应用程序ID按字典顺序排序的,但我不确定)。该文档提供了API接受的参数列表,但我没有看到任何对结果进行排序的方法。如果RESTAPI不支持排序,那么有没有其他方法可以对结果进行排序?我正在关注的文档是这个https://hadoop.apache.org/docs/r2.7.0/hadoop-yarn/hadoop-ya
yarn是否会在hdfs上存储有关已完成应用程序的信息,包括运行时?我只是想通过hdfs上的一些文件来获取应用程序运行时(如果确实存在这样的文件,我已经检查了日志并且没有运行时信息)而不使用任何监控软件。 最佳答案 您可以使用ResourceManagerREST获取所有已完成应用程序的信息。http://resource_manager_host:port/ws/v1/cluster/apps?state=FINISHED对URL的GET请求将返回一个JSON响应(也可以获得XML)。必须针对每个应用程序的elapsedTime解