• Hadoop在linux下无法启动DataNode解决方法


    最近重新捡起了Hadoop,所以博客重新开张~

    首先描述一下我的问题:这次我使用eclipse在Ubuntu上运行hadoop程序。首先,按照厦门大学数据库实验室的eclipse下运行hadoop程序的教程配置好了eclipse,然后在命令行启动Hadoop。在eclipse界面中,有input文件夹,右键这个文件家有一个Upload files to DFS,通过这个上传之后,发现上传的文件大小为0.0。

    解决方法:

    首先提一句真是粗心毛病一定要改。。。。在命令行的启动hadoop的时候没有仔细看各个节点是否都启动,结果后来才发现是DataNode节点未启动;

    下面说一下DataNode无法启动可能出现的情况:

    注:下面讲的情况都可以根据/usr/local/hadoop/logs/hadoop-hadoop-datanode-king-Lenovo.log(king-lenovo是我的计算机名称)中查看到

    1. 在日志中报错:  2015-06-11 16:11:06,822 WARN org.apache.hadoop.hdfs.server.datanode.DataNode: Invalid dfs.datanode.data.dir /usr/local/hadoop/dfs/data

    这个错误通常是/usr/local/hadoop/dfs/data这个文件夹有锁,即访问权限不够。

    解决方法是修改文件夹权限:chomd g-w /usr/local/hadoop/dfs/data

    2. 日志中报错:java.io.IOException: Incompatible clusterIDs in /usr/local/hadoop/dfs/data: namenode clusterID = CID-c1bf781c-d589-46d7-a246-7f64a6f24bc1; datanode clusterID = CID-b1ee6a5b-aa39-4e9e-b849-ee7c4650989b

    这个错误的意思是namenode的clusterID与datanode的clusterID不一致,这通常是多次格式化节点造成的。

    解决方法是将两处ID改成一致的。namenode clusterID在/usr/local/hadoop/dfs/name/current/VERSON中,datanode clusterID在/usr/local/hadoop/dfs/data/current/VERSON中,将其中一处修改为和另一个一致即可。

    之后重启hadoop即可。

  • 相关阅读:
    Python:如何显示进度条
    Python:常用函数封装
    Javascript:常用函数封装
    Javascript:alert(1)可以这样写以绕过filter
    SQL注入备忘单
    Web渗透:PHP字符编码绕过漏洞总结
    SQLi Lab的视频教程和文字教程
    Python:使用基于事件驱动的SAX解析XML
    Python:渗透测试开源项目【源码值得精读】
    Python:SQLMap源码精读—start函数
  • 原文地址:https://www.cnblogs.com/kingatnuaa/p/4592989.html
Copyright © 2020-2023  润新知