今天我们来搭建Hive的开发环境,原材料如下:
操作系统:Ubuntu 16.04 LTS
Hadoop:v2.7.4
Hive:v2.2.0
JDK:v1.8
由于Hadoop是部署在Unix/Linux上的系统(貌似目前还不支持Windows),因此如果是wIndows用户请安装VMWare或类似的虚拟机,用虚拟机安装一个Ubuntu系统,就可以安装后面的方法搭建环境了。由于本人只有一台笔记本,没办法安装真正的多节点的hadoop集群,所以只介绍单机版伪分布式的环境搭建,用于学习已经足够了。
一、安装Oracle JDK
Hadoop是用Java开发的,因此需要JDK,即Java开发工具包的支持。
1.去oracle官网下载,点此链接:http://www.oracle.com/technetwork/cn/java/javase/downloads/jdk8-downloads-2133151-zhs.html;
Linux用户使用wget http://download.oracle.com/otn-pub/java/jdk/8u111-b14/jdk-8u111-linux-x64.tar.gz
2.解压到当前位置tar -zxvf jdk-8u111-linux-x64.tar.gz
3.移动到自己想放的位置,比如我的是:mkdir /home/sunlei/hadoop
mv jdk1.8.0_111 /home/sunlei/hadoop/jdk1.8.0_111
4.设置环境变量:修改当前用户配置文件,只作用于当前用户:
vi ~/.bashrc
export JAVA_HOME=/home/sunlei/hadoop/jdk1.8.0_111
export JRE_HOME=$/jre
export CLASSPATH=.:$/lib:$/lib
export PATH=.:$/bin:$PATH
5.使修改的配置立刻生效:source ~/.bashrc
6.检查是否安装成功:java -version
二、配置SSH及免密码登陆
hadoop需要使用SSH的方式登陆,客户端已经安装好了,只需要安装服务端就可以了:sudo apt-get install openssh-server
测试登陆本机ssh localhost输入yes就应该可以登录了。但是每次输入比较繁琐,如果是集群那就是灾难了,所以要配置成免密码登陆的方式。
1.生成公钥私钥ssh -keygen -t rsa,将在~/.ssh文件夹下生成文件id_rsa:私钥,id_rsa.pub:公钥
2.导入公钥到认证文件,更改权限:
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
由于我们只有一台机器,只需要导入认证文件到本机就好。如果你有多台服务器,需要重复多次以上cat命令。最后在服务器上更改权限:
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
3.测试:ssh localhost第一次需要输入yes,之后就不需要了。
三、安装hadoop
hive是基于hadoop的,首先要安装hadoop才能安装hive。
1.Apache官网下载hadoop安装包,下载地址:http://hadoop.apache.org/releases.html。要下载binary,source是源代码。
2.解压到当前位置tar -zvxf hadoop-2.7.4.tar.gz
3.移动到你想要放置的文件夹,比如我的是:mv ./hadoop-2.7.3.tar.gz /home/sunlei/hadoop/hadoop-2.7.4
4.配置文件core-site.xml,进入hadoop-2.7.4下的etc/hadoop目录内,打开core-site.xml,增加如下配置:
5.配置文件hdfs-site.xml,这里只配置了一项dfs.replication,hadoop文件的副本数,hadoop允许一个文件存在多个副本,防止某个数据丢失。此处设置为1,则每个文件是唯一的,没有副本,你可以设置成大于1的整数。
6.配置文件hadoop-env.sh,在4、5步相同的文件夹下打开文件并找到#The java implementation to use.这行,添加如下3行配置:
7.在系统环境变量中写入Hadoop的环境变量,vi /etc/environment,在最后加入::/home/sunlei/hadoop/hadoop-2.7.4/bin
:/home/sunlei/hadoop/hadoop-2.7.4/sbin
8.重启系统(必须),验证Hadoop单机模式是否安装完成,在终端输入命令:hadoop version,输出如下版本信息则安装完成:
9.格式化hdfs,使用单机版的伪分布模式。输入命令:hadoop namenode -format,返回的信息中出现has been successfully formatted.即成功格式化。
10.启动hadoop,进入到hadoop-2.7.4/sbin,输入命令start-all.sh,则启动全部hadoop进程,如下:
11.jps查看,输入命令jps则有如下6个进程,关闭hadoop用stop-all.sh。
启动Hadoop后,在浏览器中输入:http://localhost:8088/cluster,可以打开控制台,监控集群上的数据运行状况:
四、安装hive
1.Apache官网下载hive安装包,下载地址:http://mirrors.hust.edu.cn/apache/hive/。
2.解压到当前位置tar -zvxf apache-hive-2.2.0-bin.tar.gz
3.移动到你想要放置的文件夹,比如我的是:mv ./apache-hive-2.2.0-bin.tar.gz /home/sunlei/hadoop/hive-2.2.0
4.配置环境变量:只作用于当前用户:vi ~/.bashrc,添加如下配置:
export HIVE_HOME=/usr/local/hive
export PATH=$PATH:$HIVE_HOME:$HIVE_HOME/conf:$HIVE_HOME/bin
使修改的配置立刻生效:source ~/.bashrc
5.配置hive-env.sh,进入hive-2.2.0/conf目录,将hive-env.sh.template改名hive-env.sh,打开后在HADOOP_HOME和HIVE_CONF_DIR输入对应的路径如下:
6.配置hive-site.xml,进入hive-2.2.0/conf目录,将hive-default.xml.template改名hive-site.xml。
(1)指定metastore的路径,此处hive的元数据用默认的derby数据库存储,配置如下:
在bin目录下指定一个固定的路径。
(2)在hive-2.2.0目录下新建warehouse,修改配置项hive.metastore.warehouse.dir为该路径,用于存放数据。
修改warehouse的权限,输入命令chmod a+rwx /home/sunlei/hadoop/hive-2.2.0/warehouse。
(3)将hive-site.xml中所有出现system:java.io.tmpdir的路径修改为你自定义的路径,比如我的如下:
(4)初始化,hive-2之后需要进行初始化,否则启动失败,在命令行输入schematool -initSchema -dbType derby,如果看到如下信息,则初始化成功。
(5)启动Hive,直接在命令行中输入hive,如每报错,会出现hive>
到此,整个单机版的环境搭建完毕,整个过程相对比较繁琐,只要和本文相同的软件配置,基本上都能安装成功,下节开始,将正式进入Hive的介绍。
领取专属 10元无门槛券
私享最新 技术干货