在mac os x上安装、配置和运行hadoop 2.2.0

bsxbgnwa  于 2021-06-02  发布在  Hadoop
关注(0)|答案(4)|浏览(350)

我已经安装了hadoop2.2.0,并根据本教程(hadoopyarn安装)设置了所有内容(针对单个节点)。但是,我无法运行hadoop。
我想我的问题是我不能连接到我的本地主机,但我不知道为什么。我花了大约10个小时来安装、搜索和讨厌开源软件安装指南,所以我现在转向了一个从未让我失望过的地方。
既然一幅画胜过千言万语,我就给你我的设置。。。用许多词和图片:

基本配置/设置

我正在运行MacOSX(mavericks 10.9.5)

不管值多少钱,这是我的 /etc/hosts 文件:

我的bash简介:

hadoop文件配置

的设置 core-site.xml 以及 hdfs-site.xml :

注意:我已经在上面看到的位置创建了文件夹
我的 yarn-site.xml :

设置我的 hadoop-env.sh 文件:

旁注

在我显示运行结果之前 start-dfs.sh , start-yarn.sh ,然后查看运行的是什么 jps ,记住我有一个 hadoop 指向 hadoop-2.2.0 .

启动hadoop

现在,这是我启动执事的结果:

对于那些没有显微镜的人(在这篇文章的预览中它看起来非常小),下面是上面显示的代码块:
物料需求计划:~mrp$start-dfs.sh
2014-11-08 13:06:05.695 java[17730:1003]无法从scdynamicstore加载领域信息
14/11/08 13:06:05 warn util.nativecodeloader:无法为您的平台加载本机hadoop库。。。在适用的情况下使用内置java类
在[localhost]上启动namenodes
localhost:启动namenode,登录到/usr/local/hadoop-2.2.0/logs/hadoop-mrp-namenode-mrp.local.out
localhost:启动datanode,登录到/usr/local/hadoop-2.2.0/logs/hadoop-mrp-datanode-mrp.local.out
localhost:2014-11-08 13:06:10.954 java[17867:1403]无法从scdynamicstore加载领域信息
正在启动辅助名称节点[0.0.0.0]
0.0.0.0:启动secondarynamenode,登录到/usr/local/hadoop-2.2.0/logs/hadoop-mrp-secondarynamenode-mrp.local.out
0.0.0.0:2014-11-08 13:06:16.065 java[17953:1403]无法从scdynamicstore加载领域信息
2014-11-08 13:06:20.982 java[17993:1003]无法从scdynamicstore加载领域信息
14/11/08 13:06:20 warn util.nativecodeloader:无法为您的平台加载本机hadoop库。。。在适用的情况下使用内置java类
物料需求计划:~mrp$start-yarn.sh
启动守护进程
启动resourcemanager,登录到/usr/local/hadoop/logs/yarn-mrp-resourcemanager-mrp.local.out
2014-11-08 13:06:43.765 java[18053:20b]无法从scdynamicstore加载领域信息
localhost:启动nodemanager,登录到/usr/local/hadoop-2.2.0/logs/yarn-mrp-nodemanager-mrp.local.out
查看运行的内容:

超时

好 啊。到目前为止,我认为,很好。至少从其他教程和帖子来看,这看起来不错。我想。
在我尝试做任何花哨的事情之前,我只想看看它是否正常工作,并运行一个简单的命令,如 hadoop fs -ls .

失败

当我跑的时候 hadoop fs -ls ,我得到的是:

再说一次,如果你看不到那张照片,上面写着:
2014-11-08 13:23:45.772 java[18326:1003]无法从scdynamicstore加载领域信息
14/11/08 13:23:45 warn util.nativecodeloader:无法为您的平台加载本机hadoop库。。。在适用的情况下使用内置java类
ls:从mrp.local/127.0.0.1呼叫localhost:8020 failed on连接异常:java.net.connectexception:连接被拒绝;有关详细信息,请参阅:http://wiki.apache.org/hadoop/connectionrefused
我试过运行其他命令,但在所有命令的开头都出现了相同的基本错误:
从mrp.local/127.0.0.1呼叫localhost:8020 failed on连接异常:java.net.connectexception:连接被拒绝;有关详细信息,请参阅:http://wiki.apache.org/hadoop/connectionrefused
现在,我去了上面提到的那个网站,但老实说,那个链接里的一切对我来说都毫无意义。我不知道该怎么办。
我将非常感谢任何与此相关的帮助。你会让我成为有史以来最快乐的hadoop。
…这应该不用说,但显然我很乐意编辑/更新更多的信息,如果需要的话。谢谢!

qni6mghb

qni6mghb1#

有一个非常类似的问题,并发现这个问题,而谷歌搜索解决方案。
下面是我如何解决它的(在带有hadoop2.5.1的macos10.10上)。不确定问题是否完全相同:我检查了数据节点生成的日志文件(/usr/local/hadoop-2.2.0/logs/hadoop mrp datanode mrp.local.out),发现以下条目:

2014-11-09 17:44:35,238 FATAL org.apache.hadoop.hdfs.server.namenode.NameNode:
Exception in namenode join org.apache.hadoop.hdfs.server.common.InconsistentFSStateException: 
Directory /private/tmp/hadoop-kthul/dfs/name is in an inconsistent state: storage
directory does not exist or is not accessible.

基于此,我得出结论,datanode上的hdfs数据有问题。
我删除了包含hdfs数据的目录并重新格式化了hdfs:

rm -rf /private/tmp/hadoop-kthul
hdfs namenode -format

现在,我又开始跑步了。仍然想知道/private/tmp是否是一个好地方,可以保留hdsf数据外观选项来改变这种情况。

m0rkklqb

m0rkklqb2#

所以我已经启动并运行了hadoop。我有两个问题(我想)。
启动namenode和datanode时,我收到以下错误: Unable to load realm info from SCDynamicStore. 为了解决这个问题,我在我的 hadoop-env.sh 文件:
hadoop\u opts=“${hadoop\u opts}-djava.security.krb5.realm=-djava.security.krb5.kdc=”hadoop\u opts=“${hadoop\u opts}-djava.security.krb5.conf=/dev/null”
我在这篇文章的解决方案中发现了这两行代码,osx上的hadoop“无法从scdynamicstore加载领域信息”。答案是由matthew l daniel发布的。
我格式化namenode文件夹不止一次,这显然把事情搞砸了?
我无法验证这是否会把事情搞砸,因为我的任何日志文件中都没有任何错误,但是一旦我在这篇文章中遵循了解决方案1(删除并重新创建namenode/datanode文件夹,然后重新格式化),就没有数据节点启动,我就能够加载datanode并使所有内容正常工作。

1hdlvixo

1hdlvixo3#

将这些添加到 .bashrc ```
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib"

dauxcl2d

dauxcl2d4#

由于mac不支持本机库,如果要取消显示此警告:

WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable

将此添加到${hadoop\u home}/libexec/etc/hadoop中的log4j.properties:


# Turn of native library warning

log4j.logger.org.apache.hadoop.util.NativeCodeLoader=ERROR

相关问题