这个问题比较蛋疼啊,yarn应用不是自己写的(借鉴他人滴),为了兼容mapreduce v1 所以使用了
org.apache.hadoop.mapreduce.Job 这个类来做客户端连接
如果不考虑兼容问题,可以直接使用 org.apache.hadoop.mapred.JobClient
来说说我碰到的这个问题:在多次执行yarn应用后,发现有成功有失败,而且几率不一定。
这种问题恼火啊,还好hadoop的日志做的还不错
http://192.168.146.13:8088/cluster 这个地址里面很容易找到想要的log,记得换成自己RM的ip。
先说明一下,我的环境里RM 地址为192.168.146.13,资源不能浪费,在RM上我同时启动了NM
查看app的日志,报的都是connectionException
当然就会有以下内容了
2012-12-26 18:14:21,218 INFO [main] org.apache.hadoop.ipc.Client: Retrying connect to server: 0.0.0.0/0.0.0.0:8030. Already tried 0 time(s).
我进行多次测试,发现了里面的问题:
如果container是在RM所在机器的NM上创建,则没有问题;
如果不是则会出现以上这段...一堆Retrying...
检查yarn-site.xml,配置也没问题。
问题就出在
yarn.resourcemanager.scheduler.address
这个配置,不是yarn-site.xml有问题,有问题的其实是客户端程序。
贴段代码
Configuration conf = new Configuration();
conf.set("fs.default.name",hdfsUri);
conf.set("fs.hdfs.impl", "org.apache.hadoop.hdfs.DistributedFileSystem");
conf.set("mapreduce.framework.name", "yarn");
conf.set("fs.AbstractFileSystem.hdfs.impl", "org.apache.hadoop.fs.Hdfs");
conf.set("yarn.resourcemanager.address", yarnip+":"+8032); //设置RM 访问位置
//conf.set("yarn.resourcemanager.scheduler.address", yarnip+":"+8030);//设置调度地址
Job job = new Job(conf, "MR2SmokeTest");
问题就出在注释的那一句,我真想不明白啊,RM和NM之间难道连调度也要我去告诉Cluster吗???
还真是这样,如果没有注入调度地址,NM会默认为0.0.0.0:8030...
分享到:
相关推荐
Hadoop 2.0是Hadoop生态系统的一个关键版本,引入了YARN(Yet Another Resource Negotiator),改进了资源管理,使得Hadoop能够支持更多种类的应用,如交互式查询、实时分析等。 6.2 ZooKeeper ZooKeeper是Hadoop...
- `etc/hadoop/yarn-site.xml`:YARN是Hadoop的资源管理系统,负责调度和管理集群资源。这里可以配置资源管理器地址(`yarn.resourcemanager.address`)和容器内存大小(`yarn.nodemanager.resource.memory-mb`)等...
4. yarn.resourcemanager.scheduler.address:此属性设置资源管理器调度器的主机地址和端口,默认值为${yarn.resourcemanager.hostname}:8030。 5. yarn.resourcemanager.webapp.address:此属性定义了资源管理器...
- **8030**:`yarn.resourcemanager.scheduler.address`,调度器组件的IPC端口,用于调度资源。 - **8031**:`yarn.resourcemanager.resource-tracker.address`,ResourceManager与NodeManager之间的通信端口。 -...
在Hadoop生态系统中,端口配置对于集群的正常运行至关重要,因为它们决定了各个组件之间的通信方式。本文将详细解析Hadoop中常用的端口及其配置,包括HDFS、MapReduce以及其他的次要服务端口。 首先,我们关注HDFS...
在搭建和管理Hadoop集群时,了解各个组件的端口设置是至关重要的。Hadoop作为一个分布式计算框架,其核心组件包括HDFS(Hadoop Distributed File System)和YARN(Yet Another Resource Negotiator)。此外,Ambari...
在大数据领域,Hadoop是一个广泛使用的开源框架,用于存储和处理大规模数据,而YARN(Yet Another Resource Negotiator)是Hadoop的资源管理系统,负责任务调度和集群资源管理。 【描述】基于SpringBoot的Hadoop-...
10. Hadoop2.0引入YARN作为资源管理调度框架,提高了系统的可扩展性和效率。 11. Hadoop本身具有权限管理和安全措施,确保集群安全运行。 12. 搭建Hadoop HA集群需要预先部署Zookeeper集群,以实现高可用协调。 ...
在构建Hadoop大数据平台时,YARN(Yet Another Resource Negotiator)是核心组件之一,它负责资源管理和调度。本教学课件将详细讲解如何配置、启动和验证YARN集群,确保高效稳定的数据处理。 首先,任务一是配置...
3. Hadoop版本:Apache Hadoop的主要发行版本包括Hadoop1.x、Hadoop2.x和Hadoop3.x,其中Hadoop2.x引入了YARN以改进资源调度。 4. Hadoop集群部署:Hadoop可以部署在独立模式(单机测试)、伪分布式模式(单机模拟...
这一版本的Hadoop引入了YARN(Yet Another Resource Negotiator),它是Hadoop的资源管理和调度器,旨在提高集群资源利用率和系统整体性能。同时,Hadoop 2.7.2还对HDFS进行了优化,增强了其稳定性和安全性。 HBase...
1. **引入YARN**:Hadoop2.x引入了YARN(Yet Another Resource Negotiator),作为资源管理和任务调度的核心组件,取代了1.x中的JobTracker。 2. **配置文件的变化**:`mapred-site.xml`和`yarn-site.xml`代替了原来...
17. Hadoop 1.0没有完善的HA策略,而Hadoop 2.0引入了YARN和HDFS HA,提高了系统可靠性。 18. 虽然HDFS有多个副本,但NameNode作为元数据管理节点,仍可能存在单点故障问题。在Hadoop 2.x中,通过HDFS HA可以解决这...
`hadoop.dll` 提供了与Hadoop相关的功能,如文件系统操作、网络通信和任务调度等,使得Hadoop能够与Windows系统兼容并执行其核心功能。 另一方面,`winutils.exe` 是Hadoop在Windows上的实用工具程序,它提供了与...
9. Hadoop包含了四大模块:Hadoop Common(基础工具和服务)、HDFS、MapReduce(并行计算框架)和YARN(资源调度系统)。此外,ResourceManager负责集群资源管理和作业调度,其WebUI默认端口号为8088。 10. ...
在Hadoop 2.x系列中,最显著的变化是引入了YARN(Yet Another Resource Negotiator),这是一个资源管理系统,负责调度集群中的计算资源,使得Hadoop不再局限于MapReduce一种计算模型,可以支持更丰富的数据处理框架...
一旦配置完成,我们需要启动Hadoop的各个守护进程,包括DataNode(数据节点,存储数据块)、NodeManager(YARN的节点管理器)、ResourceManager(YARN的全局资源调度器)、NameNode和Secondary NameNode。...
2. **YARN(Yet Another Resource Negotiator)**:YARN是Hadoop的资源管理系统,负责调度集群资源,管理应用程序生命周期。在Windows上运行YARN需要特定的配置和依赖。 3. **MapReduce**:MapReduce是Hadoop的编程...