Hadoop高可用集群搭建遇到的问题

1.格式化zookeeper异常

[root@hadoop03 bin]# hdfs zkfc -formatZK
Exception in thread "main" org.apache.hadoop.HadoopIllegalArgumentException: Could not get the namenode ID of this node. You may run zkfc on the node other than namenode.
	at org.apache.hadoop.hdfs.tools.DFSZKFailoverController.create(DFSZKFailoverController.java:128)
	at org.apache.hadoop.hdfs.tools.DFSZKFailoverController.main(DFSZKFailoverController.java:177)
[root@hadoop03 bin]# hdfs zkfc -formatZk
Exception in thread "main" org.apache.hadoop.HadoopIllegalArgumentException: Could not get the namenode ID of this node. You may run zkfc on the node other than namenode.
	at org.apache.hadoop.hdfs.tools.DFSZKFailoverController.create(DFSZKFailoverController.java:128)
	at org.apache.hadoop.hdfs.tools.DFSZKFailoverController.main(DFSZKFailoverController.java:177)

解决方案:搭建hadoop分布式集群格式化zookeeper时,最好将zookeeper集群的leader节点和hadoop的namenode节点放置在同一个主机上,然后再格式化,上面报错是因为执行的节点虽然是zookeeper的leader节点,但是他不是namenode节点。

2.启动第二个namenode遇到的问题
03节点已经采用hadoop-daemon.sh start namenode启动了一个namenode节点
这时候如果你还用hadoop-daemon.sh start namenode去02节点启动namenode是起不来的
必须现在02节点bin目录下执行:sh hdfs namenode -bootstrapStandby

--直接在02节点以守护进程启动namenode无法启动
[root@hadoop02 sbin]# sh hadoop-daemon.sh start namenode
starting namenode, logging to /home/software/hadoop-2.7.1/logs/hadoop-root-namenode-hadoop02.out
[root@hadoop02 sbin]# jps
1721 Jps
1950 QuorumPeerMain
511 JournalNode
--sbin目录下启动将02节点namenode转换为Standby namenode 也是不行的
[root@hadoop02 sbin]# sh hdfs namenode -bootstrapStandby
sh: hdfs: No such file or directory
--少了 sh 貌似也不可以
[root@hadoop02 bin]#  hdfs namenode -bootstrapStandby
-bash: hdfs: command not found
--正确的方式:在第二个namenode节点hadoop集群安装位置的bin目录下执行
[root@hadoop02 bin]#  sh hdfs namenode  -bootstrapStandby
which: no hdfs in (/home/software/jdk1.8/bin:/home/software/zookeeper-3.4.7/bin:/home/software/hadoop-2.7.1:/bin:/home/software/hadoop-2.7.1:/sbin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin)
dirname: missing operand
Try 'dirname --help' for more information.
which: no hdfs in (/home/software/jdk1.8/bin:/home/software/zookeeper-3.4.7/bin:/home/software/hadoop-2.7.1:/bin:/home/software/hadoop-2.7.1:/sbin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin)
20/04/28 09:47:59 INFO namenode.NameNode: STARTUP_MSG: 
/************************************************************
STARTUP_MSG: Starting NameNode
...
20/04/28 09:48:00 INFO common.Storage: Storage directory /home/software/hadoop-2.7.1/tmp/namenode has been successfully formatted.
20/04/28 09:48:00 INFO namenode.TransferFsImage: Opening connection to http://hadoop03:50070/imagetransfer?getimage=1&txid=0&storageInfo=-63:1329927008:0:CID-e9621384-c7f9-48c0-99bd-0f0243a8b576
20/04/28 09:48:00 INFO namenode.TransferFsImage: Image Transfer timeout configured to 60000 milliseconds
20/04/28 09:48:01 INFO namenode.TransferFsImage: Transfer took 0.01s at 0.00 KB/s
20/04/28 09:48:01 INFO namenode.TransferFsImage: Downloaded file fsimage.ckpt_0000000000000000000 size 351 bytes.
20/04/28 09:48:01 INFO util.ExitUtil: Exiting with status 0
20/04/28 09:48:01 INFO namenode.NameNode: SHUTDOWN_MSG: 

看到namenode has been successfully formatted.表示成功了
这时候可以在02节点启动namenode 了

 [root@hadoop02 bin]# cd ../sbin
[root@hadoop02 sbin]# sh hadoop-daemon.sh start namenode
starting namenode, logging to /home/software/hadoop-2.7.1/logs/hadoop-root-namenode-hadoop02.out
[root@hadoop02 sbin]# jps
6245 Jps
6153 NameNode
1950 QuorumPeerMain
511 JournalNode

OK!第二个namenode起来了

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值