首页 > 代码库 > hadoop2.6.5+sqoop1.4.6环境部署与测试(一)

hadoop2.6.5+sqoop1.4.6环境部署与测试(一)

情景描述:

用户的登录信息以记录的方式被存放在mysql(版本为5.1.73)的表中,现打算使用sqoop将登录记录抽取并存放到hdfs上,并使用mapreduce程序统计每个用户的登录次数。

环境描述:
采用4台虚拟机部署hadoop2.6.5的完全分布式环境,在其中一台担任namenode节点的主机上安装mysql-server和sqoop,用于存放和抽取源数据。除此之外,使用一台另外的机器编写mapreduce程序和发布jar包,提供给hadoop使用。
4台部署hadoop机器信息与集群中担任的角色信息如下:

IP         主机名              hadoop集群担任角色
10.0.1.100    hadoop-test-nn    NameNode,ResourceManager
10.0.1.101    hadoop-test-snn   SecondaryNameNode
10.0.1.102    hadoop-test-dn1   DataNode,NodeManager
10.0.1.103    hadoop-test-dn2   DataNode,NodeManager


涉及软件:
1. jdk1.7.0_45 --hadoop和sqoop运行必须。
2. hadoop2.6.5 --下载地址:http://apache.fayea.com/hadoop/common/hadoop-2.6.5/hadoop-2.6.5.tar.gz
3. sqoop1.4.6 --下载地址:https://mirrors.tuna.tsinghua.edu.cn/apache/sqoop/1.4.6/ 注:请选择sqoop-1.4.6.bin__hadoop-2.0.4-alpha.tar.gz下载,其他版本可能存在于hadoop2.6.5不兼容,导致抽取数据时出现异常。
4. mysql-connector-java-5.1.32-bin.jar,连接mysql的可执行JAR包,用于提供给sqoop连接mysql数据库,可以从https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.32.tar.gz 下载的tar包中解压后的目录中获得。


准备工作:
1. 修改主机名,修改/etc/hosts文件,配置主机名和IP映射关系,使各VM间可以互相解析主机名:
在每个VM的/etc/hosts文件中添加如下记录:

10.0.1.100      hadoop-test-nn nn
10.0.1.101      hadoop-test-snn snn
10.0.1.102      hadoop-test-dn1 dn1
10.0.1.103      hadoop-test-dn2 dn2

2. 在每个VM上建立hadoop用户,以后的配置工作使用hadoop用户来进行,并使用ssh-keygen和ssh-copy-id命令配置各VM的hadoop用户可以SSH互信访问。
3. 安装JDK并配置环境变量:为每台VM解压jdk的jar包到/usr/local/java下,安装JDK,并配置JAVA_HOME变量,在/etc/profile中添加如下记录:

export JAVA_HOME=/usr/local/java/jdk1.7.0_45
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH


下一节介绍hadoop完全分布式环境搭建。

本文出自 “琴里伊始” 博客,请务必保留此出处http://kotori.blog.51cto.com/4819846/1953550

hadoop2.6.5+sqoop1.4.6环境部署与测试(一)