如何在Ubuntu 16.04上安装apache sqop
Apache SQOOP是一个用于有效地在Apache Hadoop和结构化数据存储之间有效传输批量数据的工具,如关系数据库。
例如:MySQL,Oracle,Microsoft SQL Server。
我们可以在关系数据库和Hadoop之间导入和导出数据。
我们还可以从/导出/导出/导入半结构化数据源,例如HBase和Cassandra(NoSQL数据库)。
SQOOM作为一个二进制包,包含两个单独的零件客户端和服务器。
- 服务器 - 我们需要在群集中的单个节点上安装服务器。然后,此节点将作为所有SQOP客户端的入口点。
- 客户端 - 客户端可以安装在任意数量的机器上。
以下是在Ubuntu 16.04上设置Apache Sqoop的步骤。
下载所需的SQOOP包,这将具有sqoop-1.99.7-bin-hadoop200.tar.gz
文件。
1)使用WGet下载SQOOP
在文件系统上使用以下命令下载SQOOP。
wget http://archive.apache.org/dist/sqoop/1.99.7/sqoop-1.99.7-bin-hadoop200.tar.gz
检查文件是否已正确下载。
2)提取SQOOM TAR文件
提取下载的文件。
tar -xvf sqoop-1.99.7-bin-hadoop200.tar.gz
检查文件是否已正确提取。
3)移动SQOOM目录
将SQOOM目录移动到/usr/lib /
sudo mv sqoop-1.99.7-bin-hadoop200 /usr/lib/
SQOPOOP Server充当Hadoop客户端,因此在此节点上必须在此节点上使用Hadoop库(yarn,mapReduce和HDFS jar文件)和配置文件(Core-site.xml,mapreduce-stail.xml,...)。
4)设置Hadoop和Sqoop环境变量
我们应该在.bashrc文件中设置hadoop环境变量。
# Set Hadoop-related environment variables export HADOOP_HOME=$HOME/hadoop-2.7.3 export HADOOP_CONF_DIR=$HOME/hadoop-2.7.3/etc/hadoop export HADOOP_MAPRED_HOME=$HOME/hadoop-2.7.3 export HADOOP_COMMON_HOME=$HOME/hadoop-2.7.3 export HADOOP_HDFS_HOME=$HOME/hadoop-2.7.3 export HADOOP_YARN_HOME=$HOME/hadoop-2.7.3
此外,在.bashrc文件中设置sqoop环境变量。
sudo gedit .bashrc
放入.bashrc文件下面。
export SQOOP_HOME=/usr/lib/sqoop-1.99.7-bin-hadoop200 export PATH=$PATH:$SQOOP_HOME/bin export SQOOP_CONF_DIR=$SQOOP_HOME/conf export SQOOP_CLASS_PATH=$SQOOP_CONF_DIR
使用以下命令将变更生效。
source .bashrc
5)将所需的JAR文件复制到SQOOM Server Lib目录
将Hadoop-common,Hadoop-mapreduce,Hadoop-HDFS,Hadoop-yarn jars复制到/usr/lib/sqoop-1.99.7-bin-hadoop200/server/lib
(Sqoop Server lib目录)。
下面是我们需要将所有JAR复制到SQOOP Server Lib目录的路径。
/home/ubuntu/hadoop-2.7.3/share/hadoop/common /home/ubuntu/hadoop-2.7.3/share/hadoop/common/lib /home/ubuntu/hadoop-2.7.3/share/hadoop/hdfs /home/ubuntu/hadoop-2.7.3/share/hadoop/hdfs/lib /home/ubuntu/hadoop-2.7.3/share/hadoop/mapreduce /home/ubuntu/hadoop-2.7.3/share/hadoop/mapreduce/lib /home/ubuntu/hadoop-2.7.3/share/hadoop/yarn /home/ubuntu/hadoop-2.7.3/share/hadoop/yarn/lib
6)编辑core-site.xml
SQOOM Server需要模拟用户在群集中或者外部的用户访问群集的HDF和其他资源,而不是运行服务器的用户。
我们需要配置Hadoop的Core-site.xml并将以下2个属性添加到它。
<property> <name>hadoop.proxyuser.ubuntu.hosts</name> <value>*</value> </property> <property> <name>hadoop.proxyuser.ubuntu.groups</name> <value>*</value> </property>
7)初始化Metadeta存储库
在第一次启动SQOOP 2服务器之前,需要在启动SQOOP 2服务器之前初始化元数据存储库。
./bin/sqoop2-tool upgrade
8)启动SQOOP Server
启动SQOP服务器。
./bin/sqoop2-server start
检查SQOPOOP Server服务是否已启动。
jps
9)启动SQOOP客户端
只需在目标计算机上复制SQOP分发工件并将其解压缩在所需的位置,我们可以启动客户端。
我也使用与客户相同的机器。
启动SQOOM客户端
./bin/sqoop2-shell
10)下载RDBMS连接器
使用以下链接下载MySQL,Oracle和SQL Server的连接器。
需要这些连接器来在SQOOP和RDBMS之间进行连接。
检查是否已下载所有连接器。
ls Downloads/
11)设置环境变量以使用RDBMS连接器
将所有连接器移动到目录并将该目录设置为环境变量。
sudo mkdir -p /var/lib/sqoop2/ sudo chmod 777 /var/lib/sqoop2/ mv Downloads/*.jar /var/lib/sqoop2/ ls -l /var/lib/sqoop2/ export SQOOP_SERVER_EXTRA_LIB=/var/lib/sqoop2/