最近比较迷hadoop,因为觉得在如今互联网时代大数据应用将会有不错的前景。虽然现在已经有了很多hadoop解决方案的应用商比如说Hortonworks、Cloudera等等这样的公司,但是我还是觉得自己从apache上下载安装hadoop是一件很酷的事,这样的话所有配置都是在自己的掌握之下才能更好的学习hadoop的知识。闲话不多说了,接下来就是记录自己学习hadoop的心得与技巧,高手看了一笑了之,新手一起共勉!

1、先从官网http://hadoop.apache.org上下载hadoop1.x版本(暂未研究Hadoop2).

2、安装linux操作系统,很多教程都是安装的ubuntu系统可是我不喜欢,本人还是喜欢CentOS和RedHat系统,有闲置的真机当然最好,如果没有的话就只能玩虚拟机了。(本人的笔记本配置还行,8G的内存所以就搭建了五台虚拟机,一个namenode,一个seco)

3、将下载的hadoop压缩包解压到/usr/local目录(很多教材推荐目录),最重要的安装jdk,最好是将系统原有的jdk版本卸载然后重新从官网下载较新的比较稳定版本的jdk,建议下载压缩包格式的jdk。同样的将下载好的jdk压缩包也解压到/usr/local目录下。

4、hadoop与jdk都已经解压到了指定的目录中,接下来就是配置它们的环境变量了,在用户的主目录下的.bash_profile或者.bashrc文件中添加PATH变量:hadoop学习记录-安装_hadoop

并且将变量下的bin目录导入到PATH中:

hadoop学习记录-安装_学习记录_02

最后通过运行jdk命令java -version查看jdk安装是否成功,运行hadoop命令hadoop version查看hadoop是否安装成功:

hadoop学习记录-安装_学习记录_03

5、安装成功后,然后就是对集群的配置了,为了便于对hadoop配置的管理和日后升级的方便,将hadoop安装目录中的conf目录移到/etc下并将conf目录重命名为hadoop,则hadoop的配置文件就到移到了/etc/hadoop目录下这样好像也还符合linux系统的习惯,然后在hadoop安装目录中建立一个软链接conf到/etc/hadoop:

hadoop学习记录-安装_hadoop_04

6、配置ssh,这个步骤是比较重要的,很多人都会问为什么要配置这一步,如果你研究过hadoop的启动脚本的话你就可以发现其实就是namenode节点需要ssh登录到各个datanode上去启动hadoop的进程。所以并不需要有的书上说的要配置所以节点间相互的无密码登录。那么我们就先在namenode节点上生成密钥对:

hadoop学习记录-安装_安装_05

一直回车,完成后会在用户主目录下的.ssh目录下生成两个文件:

hadoop学习记录-安装_hadoop_06

通过命令将id_rsa.pub公钥文件复制到其他节点上去:ssh-copy-id <hostname>,这样就直接把文件拷贝到了其他节点的.ssh目录下并且还自动改为了authorized_key文件

然后可以逐一的去检验ssh登录了。