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

linux系统安装hadoop-1.2.1遇到的问题【linux本机上的主机名和域名问题、不可以使用默认的localhost;完全没有启动】

2015-03-25 11:21 821 查看

参考博客:

【问题一:主机名和域名配置文件问题及hadoop的配置文件etc/hadoop/core-site.xml导致hadoop彻底不能启动】

博客:hadoop1.2.1伪分布模式配置

/article/4607252.html

博客:在对HDFS格式化,执行hadoop namenode -format命令时出现未知的主机名的问题

/article/3875410.html

【问题二:datanode问题】:

博客:Hadoop 启动节点Datanode失败解决:

http://www.linuxidc.com/Linux/2014-11/108822.htm

博客:关于namenode namespaceID与datanode namespaceID 不一致导致datanode无法启动的问题:

http://f.dataguru.cn/thread-24378-1-1.html

=========================================================================================================

主机名问题:hostname;】

修改主机名位置:【共三个地方】

1、/etc/sysconfig/network中修改hostname;

2、/etc/hosts

3、还有Windows中的hosts文件:添加“ip 域名”,用于外面访问!

原理:

我们通过执行hostname命令可以看到:

[shirdrn@localhost bin]# hostname

localhost.localdomain

也就是说,Hadoop在格式化HDFS的时候,通过hostname命令获取到的主机名是localhost.localdomain,然后在/etc/hosts文件中进行映射

的时候,没有找到,看下我的/etc/hosts内容:

[root@localhost bin]# cat /etc/hosts

# Do not remove the following line, or various programs

# that require network functionality will fail.

127.0.0.1 localhost localhost

192.168.1.103 localhost localhost

也就说,通过localhost.localdomain根本无法映射到一个IP地址,所以报错了。

此时,我们查看一下/etc/sysconfig/network文件:

NETWORKING=yes

NETWORKING_IPV6=yes

HOSTNAME=localhost.localdomain

可见,执行hostname获取到这里配置的HOSTNAME的值。

解决办法:

修改/etc/sysconfig/network中HOSTNAME的值为localhost,或者自己指定的主机名,保证localhost在/etc/hosts文件中映射为正确的IP地

址,然后重新启动网络服务:

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------

【hadoop安装目录下的/conf/core-site.xml文件的配置问题:】

<configuration>

<property>

<name>fs.default.name</name>

<value>hdfs://hadoop:9000</value>

</property>

</configuration>

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

【datanode没有启动问题:】

导致原因:namenode和datanode的namespaceID不一致

解决办法【手动修改之后无效,一气之下,把name和data目录都删除,重新格式化namenode】:

1、直接删除name文件夹和data文件夹,重新格式化namenode

./bin/hadoop namenode -format

2、./bin/hadoop-daemon.sh start datanode

3、jps查看对应节点的进程是否启动
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐