1. mapreduce.shuffle set in yarn.nodemanager.aux-services is invalid.The valid service name should only contain a-zA-Z0-9_ and can not start with numbers
解决办法:
在yarn-site.xml 配置文件中增加:
-
<property>
-
<name>yarn.nodemanager.aux-services</name>
-
<value>mapreduce_shuffle</value>
-
</property>
重启就ok了
这个问题其实是由于
-
yarn.nodemanager.aux-services
配置错误或者没有配置,其实,如果没有配置这个参数应该会有默认值。这是目前版本的一个小bug:
https://issues.apache.org/jira/i#browse/YARN-1289
2.Datanode denied communication with namenode: DatanodeRegistration(0.0.0.0, storageID=DS-445663431-127.0.0.1-50010-1394867858930, infoPort=50075, ipcPort=50020, storageInfo=lv=-47;cid=CID-982d36dc-3def-47fa-8cf7-9f2f19089eaa;nsid=1165019335;c=0)
网上查了一些资料,说了可能是两种原因造成的:
1. clusterID不一致,namenode的cid和datanode的cid不一致,导致的原因是对namenode进行format的之后,datanode不会进行format,所以datanode里面的cid还是和format之前namenode的cid一样,解决办法是删除datanode里面的dfs.datanode.data.dir目录和tmp目录,然后再启动start-dfs.sh
2.即使删除iptables之后,仍然报Datanode denied communication with namenode: DatanodeRegistration错误,参考文章http://stackoverflow.com/questions/17082789/cdh4-3exception-from-the-logs-after-start-dfs-sh-datanode-and-namenode-star,可以知道需要把集群里面每个houst对应的ip写入/etc/hosts文件就能解决问题。
我每次datanode数据目录下和tmp都会清空,因此不是第一种问题,但是第2个问题我没看懂,我猜是DNS解析是/etc/hosts文件出的问题,我原hdfs配置文件虽然配的都是本机,但是用的不是localhost, 而是ip地址的形式,我猜是这个原因,因此将配置文件中所有ip地址改为localhost, 问题解决。
参考:http://wang-2011-ying.iteye.com/blog/1996654
http://grokbase.com/t/cloudera/scm-users/135y4jn3dw/datanode-denied-connection-with-namenode
3.2014-03-15 16:15:10,307 INFO org.apache.hadoop.service.AbstractService: Service ResourceManager failed in state STARTED; cause: org.apache.hadoop.yarn.exceptions.YarnRuntimeException: Failed to login
org.apache.hadoop.yarn.exceptions.YarnRuntimeException: Failed to login
at org.apache.hadoop.yarn.server.resourcemanager.ResourceManager.serviceStart(ResourceManager.java:631)
at org.apache.hadoop.service.AbstractService.start(AbstractService.java:193)
at org.apache.hadoop.yarn.server.resourcemanager.ResourceManager.main(ResourceManager.java:872)
Caused by: java.net.UnknownHostException: localhost.localdomain: localhost.localdomain
at java.net.InetAddress.getLocalHost(InetAddress.java:1425)
at org.apache.hadoop.security.SecurityUtil.getLocalHostName(SecurityUtil.java:227)
at org.apache.hadoop.security.SecurityUtil.login(SecurityUtil.java:247)
at org.apache.hadoop.yarn.server.resourcemanager.ResourceManager.doSecureLogin(ResourceManager.java:685)
at org.apache.hadoop.yarn.server.resourcemanager.ResourceManager.serviceStart(ResourceManager.java:629)
... 2 more
2014-03-15 16:15:10,308 INFO org.apache.hadoop.metrics2.impl.MetricsSystemImpl: Stopping ResourceManager metrics system...
2014-03-15 16:15:10,308 INFO org.apache.hadoop.metrics2.impl.MetricsSystemImpl: ResourceManager metrics system stopped.
2014-03-15 16:15:10,308 INFO org.apache.hadoop.metrics2.impl.MetricsSystemImpl: ResourceManager metrics system shutdown complete.
2014-03-15 16:15:10,309 FATAL org.apache.hadoop.yarn.server.resourcemanager.ResourceManager: Error starting ResourceManager
org.apache.hadoop.yarn.exceptions.YarnRuntimeException: Failed to login
at org.apache.hadoop.yarn.server.resourcemanager.ResourceManager.serviceStart(ResourceManager.java:631)
at org.apache.hadoop.service.AbstractService.start(AbstractService.java:193)
at org.apache.hadoop.yarn.server.resourcemanager.ResourceManager.main(ResourceManager.java:872)
Caused by: java.net.UnknownHostException: localhost.localdomain: localhost.localdomain
at java.net.InetAddress.getLocalHost(InetAddress.java:1425)
at org.apache.hadoop.security.SecurityUtil.getLocalHostName(SecurityUtil.java:227)
at org.apache.hadoop.security.SecurityUtil.login(SecurityUtil.java:247)
at org.apache.hadoop.yarn.server.resourcemanager.ResourceManager.doSecureLogin(ResourceManager.java:685)
at org.apache.hadoop.yarn.server.resourcemanager.ResourceManager.serviceStart(ResourceManager.java:629)
以上问题是因为我在第2个问题中只改了hdfs.xml, 没有改/etc/hosts文件,
没辙,只能再改:
# Do not remove the following line, or various programs
# that require network functionality will fail.
#127.0.0.1 localhost.localdomain localhost
#::1 localhost6.localdomain6 localhost6
127.0.0.1 localhost
注意了,这里光改这个是不行的,还要修改/etc/sysconfig/network
执行hostname命令可以看到当前的主机名
也就是说,Hadoop在格式化HDFS的时候,通过hostname命令获取到的主机名是localhost.localdomain,然后在/etc/hosts文件中进行映射的时候,没有找到,也就说,通过localhost.localdomain根本无法映射到一个IP地址,所以报错了。修改/etc/sysconfig/network文件:
NETWORKING=yes
NETWORKING_IPV6=yes
#HOSTNAME=localhost.localdomain
HOSTNAME=localhost
重新执行mapreduc作业:
hadoop jar hadoop-mapreduce-examples-2.2.0.jar pi 200 1000
OK.
参考:http://blog.csdn.net/shirdrn/article/details/6562292
分享到:
相关推荐
spark-2.2.0-yarn-shuffle.jar
现在官网下载缓慢,这里可以直接下载安装,所以分享给大家,以供直接下载,版本号 yarn-1.0.2.msi
yarn安装.docx
npm install -g yarn yarn install 安装失败,使用官方下载的yarn.lock文件
1. 解压Spark安装包 2. 配置Hadoop生态组件相关环境变量 2. 在 master 节点上,关闭HDFS的安全模式: 3. 在 master 节点上
yarn安装包给不能下载的用户提供下载,欢迎下载。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
Ambari2.1.0安装配置(hadoop yarn spark集群安装配置)
hadoop2.6基于yarn的安装配置
详细描述 node环境安装与配置 npm环境配置以及仓库配置 yarn环境配置
Spark&Yarn手动安装指南
spark-2.2.0-bin-hadoop2.6.tgz是用于支持Spark on YARN模式的安装的包
3.1 hdfs和yarn单机安装 17 3.1.1 配置主机和防火墙 17 3.2 hadoop基本shell命令 19 3.3 简单JAVA实例 20 4 伪分布式部署spark 20 4.1 下载spark 20 4.2 解压安装 20 4.3 安装scala. 20 4.4 配置spark的启动参数 21 ...
05.yarn集群安装启动.mp4
yarn安装
Yarn is a package manager for your code. It allows you to use and share code with other developers from around the world. Yarn does this quickly, securely, and reliably so you don’t ever have to ...
基于ambari安装大数据平台,已通过测试,按照文档步骤可以完成安装。
Apache Hadoop YARN (Yet Another Resource Negotiator,另一种资源协调者)是一种新的 Hadoop 资源管理器,它是一个通用资源管理系统,可为上层应用提供统一的资源管理和调度,它的引入为集群在利用率、资源统一...
特别是那种安装麻烦的软件,一个小小的依赖问题就可能把你卡出翔。 十月份的时候Hadoop2.2 Release了,新版本基于Yarn框架。在0.2x时代就听过这个名头,貌似牛B闪闪的样子。 于是花了一天多的时间进行安装,结果在...
yarn安装包解压安装即可
自己编译的64bithadoop-2.2.0版本 [INFO] Reactor Summary: [INFO] [INFO] Apache Hadoop Main ................................ SUCCESS [1.834s] [INFO] Apache Hadoop Project POM ......................... ...