hadoop2.6.5+sqoop1.4.6环境部署与测试
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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环境部署与测试的主要内容,如果未能解决你的问题,请参考以下文章
[hadoop读书笔记] 第十五章 sqoop1.4.6小实验 - 将mysq数据导入hive
基于hadoop2.7集群的Spark2.0,Sqoop1.4.6,Mahout0.12.2完全分布式安装
Centos7安装Sqoop(CentOS7+Sqoop1.4.6+Hadoop2.8.0+Hive2.1.1)
oozie4.3.0+sqoop1.4.6实现mysql到hive的增量抽取