参考网页:http://vampire1126.iteye.com/blog/891693
http://vampire1126.iteye.com/blog/891735
基本上是参照这个博客做下来的,然后自己实现了下。
-----------------------------------------------------正式工作------------------------------------------------------
安装软件:
VMware workstation 8
Ubuntu 10.04LTS
总体步骤:
1.安装Ubuntu,在Ubuntu中装好jdk,hadoop和ssh-server。
2.配置jdk环境变量,配置hadoop,配置ssh-key
3.单机环境运行hadoop监测是否成功
4.克隆单机hadoop环境的ubuntu,将两台ubuntu加入一个局域网
5.配置master和slave的ip,并测试是否ping通
6.在所有结点上配置相关master和slave信息
7.在slave中拷贝master和JobTracker的公钥,在JobTracker上拷贝master公约
8.启动hadoop,并用wordcount程序测试是否搭建成功
详细步骤:
1. 利用VMware安装虚拟机Ubuntu,我选择的是10.04,因为10.04是长效支持版本(long-term supported)。常规的安装过程,不累述。
2. 进入Ubuntu之后,选择软件源为中国的源,这里我选择了163的源。
3. 安装JDK
a) 在usr下新建Java文件夹,并拷贝下载好的jdk
b) 改变Java目录为可执行,进入Java这个目录,并执行安装。
4. 安装hadoop
下载hadoop并将其拷贝到usr/local文件夹下,并解压缩,然后将带版本号的文件夹重命名为hadoop。对应命令如下:
5. 创建hadoop的用户组,并在hadoop用户组中添加hadoop用户。
6. 为添加的用户提供root权限。
7. 配置Java变量
打开etc下的profile文件,在文件的后面加上环境变量。
改好后,重新启动虚拟机。
8. 重启后使用hadoop用户登录
检测java环境变量是否配置好
9. 安装ssh-server。我第一次尝试的时候是在ubuntu11.10,需要事先update一下apt-get
创建一个rsa的ssh-key
将生成的ssh-key加入到信任列表:
10. 配置hadoop
为hadoop添加java环境变量:
配置core-site.xml
(上图是我已经配置好集群之后的截图,如果需要是单机环境,将master换为localhost。)
配置mapred-site.xml
(上图是我已经配置好集群之后的截图,如果需要是单机环境,将master换为localhost。)
11. 运行测试
格式化namenode
为hadoop用户赋予hadoop文件夹的使用权限
启动hadoop
利用jps查看已经启动的服务
12. 运行wordcount程序
在tmp文件夹下添加一个文件作为测试:
将其上传到hdf文件系统中:
执行wordcount程序,并将结果上送至result
查看result的结果:
统计结果:
(如果还需要继续执行其余程序,应该将输出结果放到其他文件夹,否则会出现fileAlreadyExist的错误)
----------------------------------------------至此,单机模式已经匹配完成------------------------------
13. 克隆单机配置好hadoop环境的ubuntu
在VM的library中的Ubuntu点击右键,选择manage中的clone,然后按照提示做一个完整的克隆。(虚拟机需要在关闭状态)
14. 将两台Ubuntu加入到一个局域网中。
在虚拟机上点击右键,选择setting,点击Network Adapter,两台都选择同一个custom模式下同一个虚拟局域网。
15. 设置为其中一台为Master(因为在虚拟机中,因此随便选一台即可,之后不要混淆,实际中应选取性能强劲的为Master),极为UbuntuM,另一台为UbuntuS(Ubuntu Slave)。
分别配置两者的IP地址:
Slave:
并测试能否ping通过:
Slave ping的地址是192.168.1.10
16. 在所有结点上,配置/usr/local/Hadoop,以下是配置好的截图,配置过程只需要用gedit或者vi打开该文件并配置即可。
配置hosts
分别用vi打开下面画线的文件,添加内容或者修改内容,添加和修改的内容用黄线划出
配置hdfs-sites文件:
17. 在slave上拷贝master的密钥
将这些密钥添加到信任列表
18.在JobTracker上拷贝master的公钥并添加到信任列表
19.删除/home/hadoop下的tmp文件夹(对所有结点)
20.在master上格式化namenode
21. 启动hadoop
利用jps查看已经启动的服务
Master:
Slave:
22.在master上查看系统状态
23.按照单机模式,利用wordcount,测试成功。
-----------------------------集群模式搭建成功---------------------