本来在13年冬天的时候曾经安装过一个版本的hadoop和其上层的各种组件,但是时过境迁,物是人非,hadoop不知不
觉间已经出到2.6了,mapreduced的框架也有了很大的改变,因此在这里重新写一份hadoop新版的安装指南。
版本Ubuntu 14.04 64位、Hadoop 2.6.0 (stable)(但是经过测试2.4也是可以的)
一、创建用户
考虑到很多朋友是使用伪分布式安装的方式,有必要先创建一个用户
- sudo useradd -m hadoop-s /bin/bash
这条命令创建了可以登陆的 hadoop
用户,并使用
/bin/bash 作为shell。
接着使用如下命令修改密码,按提示输入两次密码 hadoop
sudo passwd hadoop
可为 hadoop 用户增加管理员权限,方便部署,避免一些对新手来说比较棘手的权限问题:
sudo adduser hadoop sudo
最后注销当前用户(点击屏幕右上角的齿轮,选择注销),在登陆界面使用刚创建的
hadoop 用户进行登陆。
二、更新软件包
由于我们使用的是Ubuntu14,因此需要更新的软件较少,但是以防万一,还是更新一下较好,命令如下:
- sudo apt-get update
由于很多时候软件源在国外,所以我们需要更改更新软件源,步骤如下
1、首先点击左侧任务栏的【系统设置】,选择【软件和更新】
2、点击【下载自】右侧的方框,选择【其他节点】
3、在列表中选中【mirrors.aliyun.com】,并点击右下角的【选择服务器】,会要求输入用户密码,输入即可
4、此时会提示列表信息过时,点击【重新载入】
5、最后耐心等待更新缓存即可。更新完成会自动关闭【软件和更新】这个窗口。
后续需要更改一些配置文件,我比较喜欢用的是
vim(vi增强版,基本用法相同),建议安装一下
- sudo apt-get install vim
- sudo apt-get install openssh-server
- ssh localhost
ssh-keygen-t rsa # 会有提示,都按回车就可以
cat id_rsa.pub >> authorized_keys # 加入授权
四、安装JDK
我们使用JDK1.7,太新的版本可能不稳定,1.7就可以了,安装方式很多,网上搜一下即可,要注意JDK需要安装在当前用户即
- hadoop的.profile文件下,即/home/hadoop/.profile,在安装完成后不要忘了source一下
sudo tar -zxvf ./hadoop-2.6.0.tar.gz-C /usr/local# 解压到/usr/local中
cd/usr/local/
sudo mv ./hadoop-2.6.0/./hadoop # 将文件夹名改为hadoop
sudo chown -R hadoop:hadoop./hadoop # 修改文件权限
- cd./hadoop
./bin/hadoop
<property>
<name>hadoop.tmp.dir</name>
<value>file:/usr/local/hadoop/tmp</value>
<description>Abase for other temporary directories.</description>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/data</value>
</property>
</configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
bin/hdfs namenode -format
sbin/start-yarn.sh
启动之后看一下进程,命令为JPS
查看localhost://50070和localhost://8088就可以看到hdfs文件系统和mapreduce架构了。
后记:还记得我之前用hadoop时jobtracker单独作为一个进程放在50030端口上,但是现在这个端口被放弃了,在此感慨下时间过得好
快,技术日新月异。
PS:要感谢武汉大学的王教授,是您让我第一次接触到hadoop并且给了我巨大的帮助,不使您失望也是我前进的动力,祝您万事如
意。同时我也想祝当时和我一起研究hadoop的小伙伴陈伟工作顺利,人生光明。