前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何在CDH集群中安装Hive2.3.3

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

作者头像
Fayson
发布2018-07-12 15:04:08
4K1
发布2018-07-12 15:04:08
举报
文章被收录于专栏:Hadoop实操Hadoop实操Hadoop实操

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

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实操

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-04-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Hadoop实操 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 4.HiveMetastore和HiveServer2服务启动
相关产品与服务
云数据库 MySQL
腾讯云数据库 MySQL(TencentDB for MySQL)为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。其具备6大企业级特性,包括企业级定制内核、企业级高可用、企业级高可靠、企业级安全、企业级扩展以及企业级智能运维。通过使用腾讯云数据库 MySQL,可实现分钟级别的数据库部署、弹性扩展以及全自动化的运维管理,不仅经济实惠,而且稳定可靠,易于运维。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档