您的位置:首页 > 运维架构

Hadoop 安装异常处理

2016-02-01 17:09 369 查看

hadoop异常解析

一、网页访问异常

异常:linux下hadoop4使用desktop火狐浏览器无法访问hadoop1的网址:hadoop:50070

原因:hadoop1、hadoop2、hadoop3、hadoop4均要关闭iptables(防火墙)和SELinux(Security-Enhanced Linux)

SELinux简介:

SELinux(Security-Enhanced Linux) 是美国国家安全局(NSA)对于强制访问控制的实现,是 Linux历史上最杰出的新安全子系统。NSA是在Linux社区的帮助下开发了一种访问控制体系,在

这种访问控制体系的限制下,进程只能访问那些在他的任务中所需要文件。

我的hadoop配置:

master节点:hadoop1(basicserver)

slaves节点:hadoop2(basicserver)、hadoop3(basicserver)、hadoop4(desktop)

解决方案:

在hadoop1到hadoop4下分别关闭防火墙和SELinux

关闭防火墙:

service iptables stop \\临时关闭,重启后失效

service ip6tables stop

chkconfig iptables off \\永久关闭,重启后仍关闭;ip6tables意思为ipv6

chkconfig ip6tables off

关闭SELinux:

setenforce 0

注意:关闭防火墙的命令,在root下方可执行,在普通用户下报错。同样地,在hadoop用户下启动网卡,ifup eth0也会报错:Users cannot control this device.

结果:关闭防火墙后,即可正常访问,问题解决。

二、启用datanode数在网页不显示

异常:访问hadoop1网址:hadoop:50070下的datanodes,Datanode Information下的node节点数不显示,无节点。

原因:/etc/hosts文件配置有问题

解决方案:

有问题前我的hosts文件配置:

127.0.0.1 localhost hadoop1 localhost4 localhost4.localdomain4

::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.88.138 hadoop1

192.168.88.139 hadoop2

192.168.88.140 hadoop3

192.168.88.142 hadoop4

修改后的hosts文件:

hadoop1:

127.0.0.1 hadoop1

#::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.88.138 hadoop1

192.168.88.139 hadoop2

192.168.88.140 hadoop3

192.168.88.142 hadoop4

hadoop2:

127.0.0.1 hadoop2

#::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.88.138 hadoop1

192.168.88.139 hadoop2

192.168.88.140 hadoop3

192.168.88.142 hadoop4

hadoop3:

127.0.0.1 hadoop3

#::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.88.138 hadoop1

192.168.88.139 hadoop2

192.168.88.140 hadoop3

192.168.88.142 hadoop4

hadoop4:

127.0.0.1 hadoop4

#::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.88.138 hadoop1

192.168.88.139 hadoop2

192.168.88.140 hadoop3

192.168.88.142 hadoop4

原因分析:

hosts文件是hostname->IP的一个映射方法,hosts文件一般如下格式:

第一部份:网络IP地址。

第二部份:主机名.域名,注意主机名和域名之间有个半角的点。

第二部份:主机名(主机名别名) ,其实就是主机名。

注意:::1 指的是ipv6的本地地址写法,相当于ipv4的本地地址是127.0.0.1

当然每行也可以是两部份,就是主机IP地址和主机名;比如 192.168.88.138 hadoop1

而如下写法产生歧义:127.0.0.1 localhost hadoop1 localhost4 localhost4.localdomain4

127.0.0.1后面第一个hostname为localhost,所以机器默认本机名为localhost,每台机器都如此,机器名重复,无法识别,所以节点数无法显示或者只能显示一个。

只要按上述方法,127.0.0.1 后面只写一个主机名hadoop1、hadoop2、hadoop3、hadoop4即可。

127.0.0.1 localhost hadoop1 localhost4 localhost4.localdomain4

::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.88.138 hadoop1

192.168.88.139 hadoop2

192.168.88.140 hadoop3

192.168.88.142 hadoop4
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: