搭建好集群后因为一时着急,出现以下的报错:
[root@hadoop1 mapreduce]# hadoop jar hadoop-mapreduce-examples-2.8.4.jar pi 20 50
Number of Maps = 20
Samples per Map = 50
org.apache.hadoop.hdfs.server.namenode.SafeModeException: Cannot create directory /user/root/QuasiMonteCarlo_1536201247182_1339573420/in. Name node is in safe mode.
The reported blocks 9 needs additional 1 blocks to reach the threshold 0.9990 of total blocks 11.
思来想去,最后突然想起来自己搭建好集群后压根儿没有进行格式化namenode,就开始运行啦。。。。
解决方案:
保险起见,直接删掉Hadoop自己创建的三个文件夹:tmp、namenode、datanode,然后重新创建;
接着输入一下命令进行初始启动的格式化:
hadoop namenode -format
格式化完毕后,在检查一下时候解决,再进行其他操作。
注意:还有一种类似的报错,同样也是因为没有初始格式化引起的,不过提示是datanode文件未定义。
解决方案同上。