Hadoop安装,伪分布式配置

来源:互联网 发布:mac如何改管理员名字 编辑:程序博客网 时间:2024/05/01 21:22

操作系统:MacOS Sierra 10.12.4
1、下载Hadoop。使用brew下载Hadoop,命令为brew install Hadoop 。默认安装为最新的Hadoop版本,截止2017-7-23日最新的版本为Hadoop 2.8.0。安装目录为/usr/local/cellar/hadoop/2.8.0。

2、需要配置java的安装目录,但是brew 安装java时,已经配置好了。所以我没有配置,到现在为止没有出现什么问题。

3、剩下就是配置Hadoop了,全部按照官网上说的做就行了,官网上的教程是针对Linux的。官网地址为http://hadoop.apache.org/docs/r2.8.0/hadoop-project-dist/hadoop-common/SingleCluster.html

4、Pseudo-Distributed Mode模式只要按照官网的说明一步步的进行就可以了,Hadoop的配置文件在安装目录下的libexec/etc/hadoop下,不同的版本配置文件有所不同。配置完etc/hadoop/core-site.xml和etc/hadoop/hdfs-site.xml,设置免密码密码登陆。如果在本地运行程序,则不需要配置yarn;若需要则要配置yarn,配置的全过程官网介绍的很详细,感觉自己给翻译,还不如直接看官网。一步一步的来就可以了!但是要英语好,一遍看不懂就看两遍!

我在运行完网上的例子之后,有点体会,坑和大家分享以下:
1、pseudo n.伪君子,假冒的人 adj.冒充的,假的。在Pseudo-Distributed Mode下,有两个文件系统,一个是本地文件系统,另一个是远程分布式分布系统,本地文件系统可以通过shell来访问,而远程分布式文件系统不在本地,需要通过Hadoop shell来访问的,需要学习Hadoop shell。程序的输入,输出都是在远程分布式文件系统中进行的。。但是远程分布式系统是虚拟的,模拟远程机器上的文件系统,其实还是在本地机器上。
2、在Local (Standalone) Mode下,程序的输入,输出都在本地的机器上,这就是本地的含义。
3、出现警告:Unable to load native-hadoop library for your platform... using builtin-java classes where applicable 不能加载本地库,官网给出的解释为:只支持Linux系统,不支持Mac os。

The native hadoop library is supported on *nix platforms only. The library does not to work with Cygwin or the Mac OS X platform.

3、在Linux和MacOS下,当关机之后再重启,出现无法启动dataNode(还是nameNode)的情况。
原因:查看日志文件,得知没有权限访问文件。hadoop会根据core-site.xml默认的情况下把namenode和datanode的信息保存在/tmp/hadoop-user.name{hadoop.tmp.dir}/dfs/data和hadoop.tmp.dir/dfs/namecoresite.xmlhadoop.tmp.dirhdfssite.xmldfs.namenode.name.dirdfs.datanode.data.dir{hadoop.tmp.dir}/dfs/data和${hadoop.tmp.dir}/dfs/name,并且需要手动去建立。
这个错误是我凭借记忆写下来的,可能会不抬准确。
限于作者知识水平,如有错误,欢迎指正!

原创粉丝点击