Hadoop启动异常情况解决方案

1. 启动时报WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable错误。

原因:动态库获取路径为/home/hadoop/local/opt/hadoop//lib,实际动态库路径为/home/hadoop/local/opt/hadoop/lib/native,将native所有动态库复制一份到上级目录,再执行启动命令。

cd /usr/local/hadoop/hadoop-2.6.0/lib/native/
cp -r ./* ../

2. 关闭hadoop时若显示no nodemanager to stop或者no datanode to stop;先进行上面的操作,再进行下面的操作:

rm -r /usr/local/hadoop/hadoop-2.6.0/tmp
rm -r /usr/local/hadoop/hadoop-2.6.0/dfs

mkdir /usr/local/hadoop/hadoop-2.6.0/tmp
mkdir /usr/local/hadoop/hadoop-2.6.0/dfs/
mkdir /usr/local/hadoop/hadoop-2.6.0/dfs/name
mkdir /usr/local/hadoop/hadoop-2.6.0/dfs/data

/usr/local/hadoop/hadoop-2.6.0/bin/hadoop namenode -format

并且 在 hadoop-env.sh 和 yarn-env.sh 中设置好了pid的存储路径:

首先建立/var/hadoop/pids的存储路径;

在 hadoop-env.sh 中设置如下:

export HADOOP_PID_DIR=/var/hadoop/pids

在yarn-env.sh 中设置如下:

export YARN_PID_DIR=/var/hadoop/pids

 3. Hadoop-2.6.0集群部署时打开50070页面,始终live nodes数目不对的问题:

/etc/hosts文件配置存在逻辑的错误:一个ip对应两个名字,Linux系统应该只采纳排序靠头的记录,当之后有同ip的记录时,估计会抛弃。

192.168.1.233 localhost
192.168.1.233 hadoop1

当hadoop的内部机制会把【192.168.1.233 localhost】的映射发送到各个slave节点,最后造成一个回环,每个节点获得namenode的信息都是localhost名字,而具体到各个机器,localhost反向映射到自己,最后造成集群中一个死路回环。解决方法:把localhost放在最后面,并且写成127.0.0.1.

192.168.1.233 hadoop1
127.0.0.1     localhost

最好建议:/etc/hosts文件,一个ip只对应一个有效的机器名字,避免逻辑冗余与回环。最好不要使用127.0.0.1或localhost。

 

转载于:https://www.cnblogs.com/fuleying/p/4556690.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值