Chinaunix首页 | 论坛 | 博客
  • 博客访问: 340951
  • 博文数量: 54
  • 博客积分: 446
  • 博客等级: 下士
  • 技术积分: 821
  • 用 户 组: 普通用户
  • 注册时间: 2011-04-30 17:37
文章分类

全部博文(54)

文章存档

2015年(35)

2014年(19)

我的朋友

分类: HADOOP

2014-04-12 14:39:52

1. DataNode,jobtracker等启动了又关闭,日志内容如下:
INFO org.apache.hadoop.hdfs.DFSClient: Exception in createBlockOutputStream 114.212.85.58:50010 java.net.NoRouteToHostException: 没有到主机的路由
2014-04-01 22:06:12,333 INFO org.apache.hadoop.hdfs.DFSClient: Abandoning blk_-6974938156988693758_3159
2014-04-01 22:06:12,335 INFO org.apache.hadoop.hdfs.DFSClient: Excluding datanode 114.212.85.58:50010
2014-04-01 22:06:12,337 WARN org.apache.hadoop.hdfs.DFSClient: DataStreamer Exception: org.apache.hadoop.ipc.RemoteException: java.io.IOException: File /home/hadoop/hadoop-datastore/mapred/system/jobtracker.info could only be replicated to 0 nodes, instead of 1
这些都是防火墙的问题,ubuntu下关闭防火墙:sudo ufw disable    查看防火墙状态:sudo ufw status
显示:状态:不活动 则为成功关闭
fedora19下关闭防火墙:
sudo systemctl stop firewalld.service
或 sudo systemctl disable firewalld.service
查看防火墙状态:
sudo systemctl stauts firewalld.service
注意:fedora19下许多命令与fedora其他版本不同
fedora下还需关闭SELINUX:(将文件按如下方式修改

sudo gedit /etc/sysconfig/selinux

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#

enforcing - SELinux security policy is enforced.

#
permissive - SELinux prints warnings instead of enforcing.

#
disabled - SELinux is fully disabled.

SELINUX= disabled # change

# SELINUXTYPE= type of policy in use. Possible values are:
#
targeted - Only targeted network daemons are protected.

#
strict - Full SELinux protection.

SELINUXTYPE=targeted
注意:这两项配置完成后一定要重启机器使其生效

2.HDFS文件系统
建议正常情况下不要随意格式化文件系统,不但会使数据丢失,而且还会发生NameNode等等无法启动的问题。如果hadoop使用了一段时间非格式化不可,正确步骤是将所配的hadoop.tmp.dir文件夹下的所有内容清空,然后用命令格式化,这样可以起到与刚安装时一样的效果,正常启动不会出现问题。
如果出现文件系统异常的问题(无法创建、删除文件等),敲命令:hadoop dfsadmin -report   检查文件系统状态
如果出现以下记录:
Configured Capacity: 0 (0 KB)
Present Capacity: 0 (0 KB)
DFS Remaining: 0 (0 KB)
DFS Used: 0 (0 KB)
DFS Used%: ?%

-------------------------------------------------
Datanodes available: 0 (0 total, 0 dead)
表明文件系统已出现问题
这时需要查看日志,出现如下内容:
ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: java.io.IOException: Incompatible namespaceIDs in /home/admin/joe.wangh/hadoop/data/dfs.data.dir: namenode namespaceID = 898136669; datanode namespaceID = 2127444065
表明是namespaceID不一致造成的问题,这时通常的处理方式是进入到hadoop.tmp.dir文件夹下,将dfs/data/current/version与  dfs/data/current/version文件中的namespaceID改成一致。然后再重启应该就没有问题了。
如果文件系统中没有很重要的文件,仍然建议用前述清空文件夹,然后格式化的方法,这样不会出现别的奇怪的问题。

3. 程序运行时进度显示map 100% reduce 0%,而且卡在reduce进程几个小时都没有进展,查看日志显示:
TaskTracker: attempt... 0.0% reduce > copy >
连续刷很多行 ,没有明显错误,这一般表明conf下masters与slaves出现了问题
需要特别说明,masters与slaves文件默认值是localhost,配置集群时按实际值修改,如果再把集群改成单机,这时masters与slaves所写的内容应当与该主机hostname中内容一致,/etc/hosts文件中127.0.0.1这一行应正确配置为:
             127.0.0.1    localhost    master
             IP                主机名       别名(别名与hostname中一致)
当然以上所说的情况是针对IP不固定(例如:DSL上网方式),如果局域网IP可以固定的情况,则masters与slaves文件直接写IP不容易出错。































 
阅读(1973) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~