如何在CDH集群中安装Hive2.3.3

温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。

Fayson的github:https://github.com/fayson/cdhproject

提示:代码块部分可以左右滑动查看噢

1.文档编写目的


本篇文章主要介绍如何在CDH集群中配置及部署Hive2.3.3版本的服务,在配置及部署Hive2服务的同时不停用CDH集群默认的Hive服务。

  • 内容概述

1.环境准备

2.配置及部署Hive2.3.3服务

3.Hive2.3.3服务启动及功能验证

  • 测试环境

1.CM和CDH版本为5.14.3

2.Hive的版本为2.3.3

3.操作系统版本为RedHat7.4

4.JDK版本为1.8.0_131

5.集群未启用Kerberos

2.环境准备


1.Hive2官网下载地址如下

http://mirrors.hust.edu.cn/apache/hive/hive-2.3.3/apache-hive-2.3.3-bin.tar.gz

(可左右滑动)

2.将apache-hive-2.3.3-bin.tar.gz包下载至服务器

[root@ip-172-31-16-68 ~]# wget http://mirrors.hust.edu.cn/apache/hive/hive-2.3.3/apache-hive-2.3.3-bin.tar.gz

(可左右滑动)

3.选择使用MySQL作为Hive2的元数据库,在MySQL中创Hive2的数据库及访问用户

CREATE DATABASE hive2metastore DEFAULT CHARACTER SET UTF8;
CREATE USER 'hive2'@'%' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON hive2metastore.* TO 'hive2'@'%';
FLUSH PRIVILEGES;

(可左右滑动)

3.配置及部署Hive2


1.将下载下来的apache-hive-2.3.3-bin.tar.gz包解压至当前目录

[root@ip-172-31-5-171 ~]# tar -zxvf apache-hive-2.3.3-bin.tar.gz
[root@ip-172-31-5-171 ~]# mv apache-hive-2.3.3-bin hive2.3.3
[root@ip-172-31-5-171 ~]# ll hive2.3.3

(可左右滑动)

2.安装MySQL的JDBC驱动

[root@ip-172-31-5-171 hive-2.3.3]# cp /usr/share/java/mysql-connector-java-5.1.34.jar ./lib/
[root@ip-172-31-5-171 hive-2.3.3]# pwd
/root/hive-2.3.3
[root@ip-172-31-5-171 hive-2.3.3]# ll ./lib/mysql-*

(可左右滑动)

3.将hive-2.3.3目录移至/opt/cloudera目录下

[root@ip-172-31-5-171 ~]# mv hive-2.3.3 /opt/cloudera/
[root@ip-172-31-5-171 ~]# ll /opt/cloudera/hive-2.3.3/

(可左右滑动)

4.进入/opt/cloudera/hive-2.3.3/conf目录,创建Hive2的配置文件

cp hive-env.sh.template hive-env.sh
cp hive-default.xml.template hive-site.xml
cp hive-log4j2.properties.template hive-log4j2.properties
cp hive-exec-log4j2.properties.template hive-exec-log4j2.properties

(可左右滑动)

5.添加Hadoop的配置文件,这里使用软连接的方式

[root@ip-172-31-5-171 hive-2.3.3]# cd conf/
[root@ip-172-31-5-171 conf]# ln -s /etc/hadoop/conf.cloudera.yarn/ yarn-conf
[root@ip-172-31-5-171 conf]# ll yarn-conf/

(可左右滑动)

6.修改hive-env.sh配置文件,在文件末尾添加如下内容

[root@ip-172-31-5-171 conf]# pwd
/opt/cloudera/hive-2.3.3/conf
[root@ip-172-31-5-171 conf]# vim hive-env.sh 
export JAVA_HOME=/usr/java/jdk1.8.0_131
export HIVE2_HOME=/opt/cloudera/hive2.3.3
export HIVE2_CONF_DIR=/opt/cloudera/hive2.3.3/conf

(可左右滑动)

7.修改hive-site.xml配置文件,修改如下配置

<property>
    <name>hive.metastore.uris</name>
    <value>thrift://ip-172-31-5-171.ap-southeast-1.compute.internal:9083</value>
</property>
<property>
    <name>javax.jdo.option.ConnectionDriverName</name>
    <value>com.mysql.jdbc.Driver</value>
    </property>
<property>
<property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://ip-172-31-8-230.ap-southeast-1.compute.internal:3306/hive2metastore?useUnicode=true&amp;characterEncoding=UTF-8</value>
</property>
<property>
    <name>javax.jdo.option.ConnectionUserName</name>
    <value>hive2</value>
</property>
<property>
    <name>javax.jdo.option.ConnectionPassword</name>
    <value>password</value>
</property>
<property>
    <name>hive.exec.scratchdir</name>
    <value>/tmp/hive2</value>
</property>
<property>
    <name>hive.metastore.warehouse.dir</name>
    <value>/user/hive2/warehouse</value>
</property>
<property>
    <name>hive.repl.rootdir</name>
    <value>/user/hive2/repl/</value>
</property>
<property>
    <name>hive.repl.cmrootdir</name>
    <value>/user/hive2/cmroot/</value>
</property>

(可左右滑动)

8.创建Hive2的/tmp目录,并修改hive-site.xml中的配置

[root@ip-172-31-5-171 ~]# mkdir -p /opt/cloudera/hive-2.3.3/tmp/
[root@ip-172-31-5-171 ~]# chmod 777 /opt/cloudera/hive-2.3.3/tmp/
[root@ip-172-31-5-171 ~]# 

(可左右滑动)

将hive-site.xml文件中的{system:jva.io.tmpdir}和{system:user.name}

把{system:java.io.tmpdir} 改成 /opt/cloudera/hive-2.3.3/tmp/
把 {system:user.name} 改成 {user.name}

(可左右滑动)

9.在HDFS上创建hive2的warehouse目录,与配置hive-site.xml配置文件中hive.metastore.warehouse.dir一致

[root@ip-172-31-8-230 bin]# sudo -u hdfs hadoop fs -mkdir -p /user/hive2/warehouse
[root@ip-172-31-8-230 bin]# sudo -u hdfs hadoop fs -chown -R hive:hive /user/hive2
[root@ip-172-31-8-230 bin]# sudo -u hdfs hadoop fs -ls /user/hive2

(可左右滑动)

10.初始化Hive2元数据库

[root@ip-172-31-5-171 bin]# ./schematool -dbType mysql -initSchema hive2 password

(可左右滑动)

以上配置就完成了Hive2服务的配置,这里只是在单个节点上配置的,如果需要将Hive的HiveMetastore和HiveServer2服务安装不同的节点上,就需要将/opt/cloudera/hive-2.3.3目录拷贝至集群的其它节点相同的目录下。

4.HiveMetastore和HiveServer2服务启动


1.启动HiveMetastore服务,命令如下:

[root@ip-172-31-5-171 bin]# pwd
/opt/cloudera/hive-2.3.3/bin
[root@ip-172-31-5-171 bin]# nohup ./hive --service metastore >hive-metastore.log 2>&1 &

(可左右滑动)

检查HiveMetastore服务的9083端口是否监听

[root@ip-172-31-5-171 bin]# netstat -apn |grep 9083
[root@ip-172-31-5-171 bin]# ps -ef |grep 32205

(可左右滑动)

查看HIveMetastore服务的日志

如上截图显示服务的端口、进程及日志均无异常信息则表示HiveMetastore服务启动正常。

2.启动HiveServer2服务

[root@ip-172-31-5-171 bin]# pwd
/opt/cloudera/hive-2.3.3/bin
[root@ip-172-31-5-171 bin]# nohup ./hive --service hiveserver2 >hive-server2.log 2>&1 &

(可左右滑动)

检查HiveServer2端口及进程

查看HiveServer2服务的log日志

如上截图显示服务的端口、进程及日志均无异常信息则表示HiveServer2服务启动正常。

5.Hive2验证


1.HiveCLI命令行验证

[root@ip-172-31-5-171 bin]# sudo -u hive ./hive

(可左右滑动)

执行count和insert操作均成功

2.使用beeline连接测试

[root@ip-172-31-5-171 bin]# ./beeline 
beeline> !connect jdbc:hive2://localhost:10000 hive hive
0: jdbc:hive2://localhost:10000>

(可左右滑动)

创建表

向表中插入数据

执行count操作

3.以上操作均正常执行,查看Yarn的8088界面可以看到作业均执行成功

到此就完成了Hive2服务的配置及部署,在后面的文章Fayson会介绍Hive2服务与Spark的集成,以及在Hue界面集成等。

提示:代码块部分可以左右滑动查看噢

为天地立心,为生民立命,为往圣继绝学,为万世开太平。 温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。

推荐关注Hadoop实操,第一时间,分享更多Hadoop干货,欢迎转发和分享。

原创文章,欢迎转载,转载请注明:转载自微信公众号Hadoop实操

原文发布于微信公众号 - Hadoop实操(gh_c4c535955d0f)

原文发表时间:2018-04-26

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏个人分享

Hadoop on Yarn 各组件详细原理

  运行在独立的节点上的ResourceManager和NodeManager一起组成了yarn的核心,构建了整个平台。ApplicationMaster和相应...

15710
来自专栏有困难要上,没有困难创造困难也要上!

Hadoop3-分布式模式安装

30950
来自专栏Hadoop实操

如何在Hue中集成配置Hive2.3.3服务

18660
来自专栏加米谷大数据

编译及调试 Hadoop 源代码

Hadoop 在伪分布式模式下的编译和调试方法,其中,调试方法主要介绍使用 Eclipse 远程调试和打印调试日志两种。 编译 Hadoop 源代码 在 Win...

44660
来自专栏Hadoop实操

如何使用StreamSets实时采集Kafka数据并写入Hive表

90020
来自专栏Hadoop实操

如何在CDH集群外配置Kerberos环境的Spark2和Kafka客户端环境

28130
来自专栏Hadoop实操

如何降级Cloudera Manager和CDH

在前面的文章中,Fayson介绍过《如何升级Cloudera Manager和CDH》,在实际使用过程中,我们往往会碰到将集群升级到一个较新的版本后,会出现一些...

1.3K50
来自专栏Hadoop实操

5.如何为Impala配置OpenLDAP认证

在前面的文章Fayson讲了《1.如何在CentOS6.5安装OpenLDAP并配置客户端》、《2.OpenLDAP集成SSH登录并使用SSSD同步用户》、《3...

58140
来自专栏闵开慧

job监控与hadoop权限管理

监测Hadoop控制中心及作业运行状况 MapReduce框架由一个单独的Master JobTracker和集群节点上的Slave TaskTracker共...

414120
来自专栏Hadoop实操

CDH集群跨多版本滚动升级

34320

扫码关注云+社区

领取腾讯云代金券