Hadoop常见错误会决
添加时间:2013-6-6 点击量:
1. 经由过程号令和查看日记文件查看hadoop启动和运行景象
在NameNode端,可以经由过程
tail -100 /var/log/hadoop/hadoop/hadoop-hadoop-namenode-hadoop-namenode.log
查看NameNode的运行日记
在DataNode端也可以经由过程
cat /var/log/hadoop/hadoop/hadoop-hadoop-datanode-hadoop-datanode1.log
查看DataNode的运行日记。
经由过程jps号令分别在datanode和namenode端运行,查看已启动的办事。
2. NameNode不克不及启动:
Cannot lock storage ……tmp/dfs/name. The directory is already locked.
也许是因为履行hadoop的账号对这个文件夹tmp/dfs/name没有权限。可以应用如下号令解决
chown -R hadoop:hadoop /usr/hadoop
3. DataNode不克不及启动:
在客户端日记显示 namenode namespaceID = 1713611278; datanode namespaceID = 596511341
这个题目根蒂根基上是因为在namenode端多次运行hadoop namenode –format 导致的。在hadoop的core-site.xml文件中(不合的hadoop版本名字会有不合)找到<name>hadoop.tmp.dir</name>,清空对应的文件夹。举例:
[hadoop@hadoop-datanode1 hadoop]¥ cat core-site.xml
<?xml version=1.0?>
<?xml-stylesheet type=text/xsl href=configuration.xsl?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
<!--global properties -->
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/hadoop/tmp</value>
</property>
清空
[hadoop@hadoop-datanode1 tmp]¥ rm -rf /usr/hadoop/tmp/
然后从头启动hadoop,在datanode端用jps看是否datanode已经启动了。
4. 运行wordcount法度时fs找不到文件夹:
Input path does not exist: hdfs://localhost:9000/user/input
在集群景象中,处理惩罚的文件都是在hdfs中,所以必须把要处理惩罚的文件复制到hadoop 某个文件夹中。下面举例,在fs中新建文件夹,把提前做好的wordcount文件复制带hdfs中,最后运行法度。
[hadoop@hadoop-namenode ~]¥ hadoop fs -mkdir /tmp/wordcount/input
[hadoop@hadoop-namenode ~]¥ hadoop fs -put /home/hadoop/wordcount/input /tmp/wordcount/input
[hadoop@hadoop-namenode ~]¥ hadoop fs -ls /tmp/wordcount/input
hadoop jar /home/hadoop/hadoop-examples-1.1.2.jar wordcount /tmp/wordcount/input/input /tmp/wordcount/output
查算作果
hadoop fs -cat /tmp/wordcount/output/part-r-00000
无论对感情还是对生活,“只要甜不要苦”都是任性而孩子气的,因为我们也不完美,我们也会伤害人。正因为我们都不完美,也因为生活从不是事事如意,所以对这些“瑕疵”的收纳才让我们对生活、对他人的爱变得日益真实而具体。—— 汪冰《世界再亏欠你,也要敢于拥抱幸福》
1. 经由过程号令和查看日记文件查看hadoop启动和运行景象
在NameNode端,可以经由过程
tail -100 /var/log/hadoop/hadoop/hadoop-hadoop-namenode-hadoop-namenode.log
查看NameNode的运行日记
在DataNode端也可以经由过程
cat /var/log/hadoop/hadoop/hadoop-hadoop-datanode-hadoop-datanode1.log
查看DataNode的运行日记。
经由过程jps号令分别在datanode和namenode端运行,查看已启动的办事。
2. NameNode不克不及启动:
Cannot lock storage ……tmp/dfs/name. The directory is already locked.
也许是因为履行hadoop的账号对这个文件夹tmp/dfs/name没有权限。可以应用如下号令解决
chown -R hadoop:hadoop /usr/hadoop
3. DataNode不克不及启动:
在客户端日记显示 namenode namespaceID = 1713611278; datanode namespaceID = 596511341
这个题目根蒂根基上是因为在namenode端多次运行hadoop namenode –format 导致的。在hadoop的core-site.xml文件中(不合的hadoop版本名字会有不合)找到<name>hadoop.tmp.dir</name>,清空对应的文件夹。举例:
[hadoop@hadoop-datanode1 hadoop]¥ cat core-site.xml
<?xml version=1.0?>
<?xml-stylesheet type=text/xsl href=configuration.xsl?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
<!--global properties -->
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/hadoop/tmp</value>
</property>
清空
[hadoop@hadoop-datanode1 tmp]¥ rm -rf /usr/hadoop/tmp/
然后从头启动hadoop,在datanode端用jps看是否datanode已经启动了。
4. 运行wordcount法度时fs找不到文件夹:
Input path does not exist: hdfs://localhost:9000/user/input
在集群景象中,处理惩罚的文件都是在hdfs中,所以必须把要处理惩罚的文件复制到hadoop 某个文件夹中。下面举例,在fs中新建文件夹,把提前做好的wordcount文件复制带hdfs中,最后运行法度。
[hadoop@hadoop-namenode ~]¥ hadoop fs -mkdir /tmp/wordcount/input
[hadoop@hadoop-namenode ~]¥ hadoop fs -put /home/hadoop/wordcount/input /tmp/wordcount/input
[hadoop@hadoop-namenode ~]¥ hadoop fs -ls /tmp/wordcount/input
hadoop jar /home/hadoop/hadoop-examples-1.1.2.jar wordcount /tmp/wordcount/input/input /tmp/wordcount/output
查算作果
hadoop fs -cat /tmp/wordcount/output/part-r-00000