解决关闭Hadoop时no namenode to stop异常
下面是几种参考方式
https://blog.csdn.net/gyqjn/article/details/50805472
hadoop HA启动时 两个namenode节点都是standby
分为安装的时候和正常启动中出现的问题。有问题看namenode的日志文件
安装的过程中
1、首先你要确定不用ha的时候你的hadoop集群是正常的,不然找错误的方向就偏离了
2、如果都正常,配置ha 需要zookeeper,先要看看是不是zookeeper没有配置好的问题
3、分别启动journalnode
cd $HADOOP_HOME
sbin/hadoop-daemon.sh start journalnode
4、在standby上格式化namenode,把格式化的文件拷贝到active的集群上面
5、格式化zkfc,这句是启动zookeeper选举制度,然后执行bin/hdfs haadmin -transitionToActive nn2
其中nn2是你的namenode中的一个(如果是新配置的HAhadoop集群,可能是zkfc(DFSZKFailoverController)没有格式化导致namenode节点的自动切换机制没有开启)
6、按照顺序重启
安装完成后使用的过程中
使用命令切换主备节点
`
##hdfs namenode -bootstrapStandby
hdfs haadmin -failover nn1 nn2
hdfs haadmin -getServiceState nn2###查看节点所处在状态
hdfs haadmin -getServiceState nn1
`
datanode无法启动Block pool ID needed, but service not yet registered with NN
解决办法:
查看log文件找出datanode的文件所在目录
把原先datanode的数据
mv //current //current.bak
mv /diska/hadoop/hdfs/data/current /diska/hadoop/hdfs/data/current.bak