这两天一直在研究hadoop,对于我这个对Linux接触很少的人来说,完全是蒙蔽的。原本想找些学习材料(据说hadoop实战和hadoop权威指南都蛮不错的),可是。。。
根本看不懂!因此,决定先在网上找资料,从下载安装开始。
虽然现在还在上班,但是我总算已经把hadoop的分布式搭建好了。迫不及待的来记录分享。
对于我这个新手,一起都从零开始。
首先安装VMware虚拟机(我安装的是12版本)。
然后下载了一个centos7.0(和redhat很像,据说许多公司都用它,所以从众多Linux系统中选择了他)。
再之后嘛。。就开始按教程来了。
(※原文地址:http://www.powerxing.com/install-hadoop-in-centos/本 Hadoop 教程由给力星出品)
真的非常感谢这篇教程,写的非常好。这篇教程写的是centos6.8和hadoop2.6的安装教程,在我的centos7.0上也适用。
不知道是不是因为我和作者的版本不一样,某些地方还是出现了些小问题,让我头疼了很久。我现在记下来,希望以后看到的人可以借鉴。
①在我的环境下,我安装的是1.8.0的JDK,安装的过程也是和作者一样的。在之前安装1.7.0的时候,配置伪分布时,执行NameNode格式化(代码:$./bin/hdfsnamenode -format)的时候,总会出现如下错误。
java里的是InternalError,我找了好久也没找到,最后在某处看到说可能是jdk的问题,然后我就把。1.7.0的JDK卸载了,重新按了1.8.0的,问题就解决了。
②在这篇文章中,作者好像没有配置hadoop的JAVA_HOME(或者写在哪我没有看懂),在最开始找错误的时候,发现好多人说JAVA_HOME的路径需要重新写,就写你JDK的路径,反正最后我是配置了。
代码(如果你是按照我提供的文章安装的,完全按照我的写就可以,如果不是,自己去找hadoop里的hadoop-env.sh):
$ gedit/usr/local/hadoop/etc/hadoop/hadoop-env.sh
然后在里面找到:export JAVA_HOME=(原本=后面好像是localhost什么的,忘了)
把=号后面换上你的jdk地址。
③作者这里没有配置mapred-site.xml和yarn-site.xml,可能是没有用到吧。(我是全加里了,没有什么影响,不过是在别处找的,应该是和作者的不匹配,运行还是能运行的)
和之前的两个配置一样,都是执行gedit./etc/hadoop/mapred-site.xml和gedit./etc/hadoop/yarn-site.xml去编辑,进去之后都在的中间加入。
不过有一点要注意的是,原本的里面是没有mapred-site.xml的,而是有一个mapred-site.xml.template,需要将这个文件复制,一样放到这个位置,起名为mapred-site.xml,再在里面编辑。
学习hadoop真的让我很头疼,但是当我配置成功的时候,又是那么的有成就感!