Hadoop 2.x伪分布式环境搭建

来源:互联网 发布:点亮图标源码 编辑:程序博客网 时间:2024/05/19 04:26

Hadoop 2.x伪分布式环境搭建测试步骤:

环境简介:

本机系统:Windows7旗舰版

虚拟机:VMware版本:10.0.0 build-1295980

软件下载:http://www.xp510.com/xiazai/ossoft/desktools/22610.html

Centos 6.4(64位):

硬盘空间:80 G

内存:1.5 G

软件下载:http://www.centoscn.com/CentosSoft/iso/2013/0720/371.html

安装参考:http://jingyan.baidu.com/article/a65957f4af6d9524e67f9b80.html

Hadoop版本:Hadoop-2.5.0

JDK:jdk-7u67-linux-x64

FTP工具:FileZilla

搭建步骤:

1、  安装虚拟机:VMware10

安装过程参考:http://jingyan.baidu.com/article/48206aeae46723216ad6b3be.html

2、  在虚拟机上安装Linux操作系统:Centos6.4

安装过程参考:http://jingyan.baidu.com/article/a65957f4af6d9524e67f9b80.html

3、  配置Linux系统网络地址为静态IP,修改hostname和hosts,同时将Linux的IP和hostname添加修改到Windows的hosts中。

3.1修改linux系统主机名,如图1:

3.2修改liunx系统文件:hosts,使IP和hostname对应,如图2:

3.3修改windows系统文件:hosts,添加linux系统IP和hostname,如图3:

图3

3.4测试windows与liunx互通:

在windwos下使用liunx系统IP和hostname可以ping通,如图5:


图5

4、使用FileZilla上传hadoop和jdk安装包,如图6:


图6

1、  将上传的hadoop和jdk分别解压到安装目录,如图7:

图7

2、  配置JDK,使用java –version查看当前JKD版本,并用rpm –qa| grep java查看依赖关系,如图8:


图8

3、  使用命令:rpm –e--nodeps删除原JDK,如图9:

图9

4、  重新配置JDK,修改Linux系统下的/etc/profile文件,在文件中增加JAVA_HOME配置,如图10:


图10

5、  使用命令:source/etc/profile使文件立即生效,然后使用测试命令:java  –version,检测当前安装JDK版本,如正确输出版本信息则说明JDK配置成功,如图11:


图11

6、  将hadoop添加到环境变量vi/etc/profile:export JAVA_HOME=/usr/java/jdk1.7.0_55

7、  配置hadoop环境:修改配置文件(5个)hadoop-env.sh、core-site.xml、hdfs-site.xml、mapred-site.xml.template(需要重命名: mvmapred-site.xml.template mapred-site.xml)、yarn-site.xml

8、  格式化HDFS(namenode):hadoopnamenode –format

9、  启动hadoop:sbin/start-dfs.sh、sbin/start-yarn.sh

10、             使用jps命令验证是否启动成功,如图12则为启动成功:


图12

11、             通过web访问HDFS监控页面,如图13:


图13

 

12、             通过WEB访问YUAN管理页面,如图14:


图14

13、             使用WordCount运行结果,如图15,图16:


图15


图16

HDFS的理解:HDFS是一种分布式文件管理系统,主要实现了对底层文件的处理,可以实现上传下载查询等文件系统的主要功能。HDFS是主从结构,集群可以通过WEB页面进行维护与管理,具有高容错,可扩展的功能。还有由于设计成可以运行在低廉硬件上运行的特性,因此使用成本较低,适合大多数企业及商业应用,因此具有大规格推广的基础和先天优势。

YARN的理解,YARN是HADOOP最新的资源管理系统,主要实现了对HADOOP中的硬件资源自动分配(RM)与调度任务管理(AM)的功能。

MapReduce是一种编程思维,源于GOOGLE的论文,适用于大量数据的并行执行或运算,中心思想是将任务分解到成若干小任务运行后再汇总,其中MAP是交任务分解,REDUCE是汇总。个人理解是MAP过程有两个功能:1将我们的任务分解成若干个小任务,2是查询分类过程,将我们需要的信息找出来,最后用REDUCE将我们查到的信息进行汇总处理,并存储或者输出到客户。


0 0