---
title: 部署Hive引擎
description: "本章节规划的环境有七台服务器组成，分别是任务提交节点（1台）、计算节点（3台）、存储节点（3台）。其中Hive Client作为大数据集群的任务提交节点，计算节点分别是大数据集群的agent1、agent2和agent3。存储节点分别是大数据集群的ceph1、ceph2、ceph3。如图1所示。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengboostkithistory/2200/bds/kunpengomnidata_20_0121.html
sourcePath: /source/zh/kunpengboostkithistory/2200/bds/kunpengomnidata_20_0121.html
indexId: 436f9cbeda56b53e7985ff16cb36f0f6a16c83b833dade41d09709bb409a545a71
---
# 部署Hive引擎

#### 规划集群环境

本章节规划的环境有七台服务器组成，分别是任务提交节点（1台）、计算节点（3台）、存储节点（3台）。其中Hive Client作为大数据集群的任务提交节点，计算节点分别是大数据集群的agent1、agent2和agent3。存储节点分别是大数据集群的ceph1、ceph2、ceph3。如图1所示。

图1 环境配置

集群所使用的硬件环境如表1 集群环境硬件配置所示。


**表1 集群环境硬件配置**

| 项目 | 型号 |
| --- | --- |
| 处理器 | 鲲鹏920 5220处理器 |
| 内存大小 | 384GB （12 \* 32GB） |
| 内存频率 | 2666MHz |
| 网卡 | Ceph环境：业务网络25GE，管理网络GE HDFS环境：业务网络10GE，管理网络GE |
| 硬盘 | 系统盘：1\*RAID 0（1\*1.2T SAS HDD） 管理节点：12\*RAID 0（1\*4T SATA HDD） 计算节点： Ceph环境：1\*3.2T NVMe HDFS环境：12 \* RAID 0（1 \* 4T SATA HDD） 存储节点： Ceph环境：12\*RAID 0（1\*4T SATA HDD） 1\*3.2T NVMe HDFS环境：12 \* RAID 0（1 \* 4T SATA HDD） |
| RAID卡 | LSI SAS3508 |


#### 安装Hive引擎

安装过程选择“/opt/hive/boostkit”作为软件安装的目录，将Hive依赖的JAR都放在该目录下，如表3 组件安装目录所示。


**表2 组件安装目录**

| 安装节点 | 安装目录 | 安装组件 | 获取方式 |
| --- | --- | --- | --- |
| 服务端（server1） | /opt/hive/boostkit | aws\-java\-sdk\-bundle\-1.11.375.jar | 鲲鹏社区下载 |
| 服务端（server1） | /opt/hive/boostkit | bcpkix\-jdk15on\-1.68.jar | 鲲鹏社区下载 |
| 服务端（server1） | /opt/hive/boostkit | bcprov\-jdk15on\-1.68.jar | 鲲鹏社区下载 |
| 服务端（server1） | /opt/hive/boostkit | boostkit\-omnidata\-client\-1.4.0\-aarch64.jar | 华为Support官网下载 |
| 服务端（server1） | /opt/hive/boostkit | boostkit\-omnidata\-common\-1.4.0\-aarch64.jar | 华为Support官网下载 |
| 服务端（server1） | /opt/hive/boostkit | boostkit\-omnidata\-hive\-exec\-3.1.0\-1.4.0.jar | 鲲鹏社区下载或者使用源码进行编译 |
| 服务端（server1） | /opt/hive/boostkit | guava\-31.1\-jre.jar | 鲲鹏社区下载 |
| 服务端（server1） | /opt/hive/boostkit | hadoop\-aws\-3.2.0.jar | 鲲鹏社区下载 |
| 服务端（server1） | /opt/hive/boostkit | kryo\-shaded\-4.0.2.jar | 鲲鹏社区下载 |
| 服务端（server1） | /opt/hive/boostkit | haf\-1.3.0.jar | 华为Support官网下载 |
| 服务端（server1） | /opt/hive/boostkit | hdfs\-ceph\-3.2.0.jar | 鲲鹏社区下载 |
| 服务端（server1） | /opt/hive/boostkit | hetu\-transport\-1.6.1.jar | 鲲鹏社区下载 |
| 服务端（server1） | /opt/hive/boostkit | jackson\-annotations\-2.13.2.jar | 鲲鹏社区下载 |
| 服务端（server1） | /opt/hive/boostkit | jackson\-core\-2.13.2.jar | 鲲鹏社区下载 |
| 服务端（server1） | /opt/hive/boostkit | jackson\-databind\-2.13.2.1.jar | 鲲鹏社区下载 |
| 服务端（server1） | /opt/hive/boostkit | jackson\-datatype\-guava\-2.12.4.jar | 鲲鹏社区下载 |
| 服务端（server1） | /opt/hive/boostkit | jackson\-datatype\-jdk8\-2.12.4.jar | 鲲鹏社区下载 |
| 服务端（server1） | /opt/hive/boostkit | jackson\-datatype\-joda\-2.13.3.jar | 鲲鹏社区下载 |
| 服务端（server1） | /opt/hive/boostkit | jackson\-datatype\-jsr310\-2.12.4.jar | 鲲鹏社区下载 |
| 服务端（server1） | /opt/hive/boostkit | jackson\-module\-parameter\-names\-2.12.4.jar | 鲲鹏社区下载 |
| 服务端（server1） | /opt/hive/boostkit | jasypt\-1.9.3.jar | 鲲鹏社区下载 |
| 服务端（server1） | /opt/hive/boostkit | jol\-core\-0.2.jar | 鲲鹏社区下载 |
| 服务端（server1） | /opt/hive/boostkit | joni\-2.1.5.3.jar | 鲲鹏社区下载 |
| 服务端（server1） | /opt/hive/boostkit | log\-0.193.jar | 鲲鹏社区下载 |
| 服务端（server1） | /opt/hive/boostkit | perfmark\-api\-0.23.0.jar | 鲲鹏社区下载 |
| 服务端（server1） | /opt/hive/boostkit | presto\-main\-1.6.1.jar | 鲲鹏社区下载 |
| 服务端（server1） | /opt/hive/boostkit | presto\-spi\-1.6.1.jar | 鲲鹏社区下载 |
| 服务端（server1） | /opt/hive/boostkit | protobuf\-java\-3.12.0.jar | 鲲鹏社区下载 |
| 服务端（server1） | /opt/hive/boostkit | slice\-0.38.jar | 鲲鹏社区下载 |


aws-java-sdk-bundle-1.11.375.jar、hadoop-aws-3.2.0.jar、hdfs-ceph-3.2.0.jar这三个JAR包在Ceph环境下需要添加，HDFS不需要这三个JAR包。除aws-java-sdk-bundle-1.11.375.jar、hadoop-aws-3.2.0.jar、hdfs-ceph-3.2.0.jar外，上述依赖包可通过执行Gitee上hive_build.sh(https://gitee.com/kunpengcompute/boostkit-bigdata/blob/main/omnidata/omnidata-hive-connector/hive_build.sh)脚本获取。


1. 创建“/opt/hive/boostkit”目录。
  1 mkdir -p /opt/hive/boostkit

2. 在任务提交节点（server1）上，将在软件获取中得到boostkit-omnidata-client-1.4.0-aarch64.jar和boostkit-omnidata-common-1.4.0-aarch64.jar（“BoostKit-omnidata_1.4.0.zip\BoostKit-omnidata_1.4.0.tar.gz”中），上传到“/opt/hive/boostkit”目录。
  1 2 cp boostkit-omnidata-client-1.4.0-aarch64.jar /opt/hive/boostkit cp boostkit-omnidata-common-1.4.0-aarch64.jar /opt/hive/boostkit

3. 将在软件获取中得到的haf-1.3.0.jar（“BoostKit-haf_1.3.0.zip\haf-1.3.0.tar.gz\haf-host-1.3.0.tar.gz\lib\jar\”中），上传到“/opt/hive/boostkit”目录。
  1 cp haf-1.3.0.jar /opt/hive/boostkit

4. 将在软件获取中得到的hdfs-ceph-3.2.0.jar和boostkit-omnidata-server-1.4.0-aarch64-lib.zip中的aws-java-sdk-bundle-1.11.375.jar、hadoop-aws-3.2.0.jar，上传到“/opt/hive/boostkit”目录（如果是HDFS存储系统，则跳过该步骤）。
  1 2 3 cp aws-java-sdk-bundle-1.11.375.jar /opt/hive/boostkit cp hadoop-aws-3.2.0.jar /opt/hive/boostkit cp hdfs-ceph-3.2.0.jar /opt/hive/boostkit

5. 使用FTP工具将boostkit-omnidata-hive-exec-3.1.0-1.4.0.zip压缩包上传到安装环境并解压。
  1 unzip boostkit-omnidata-hive-exec-3.1.0-1.4.0.zip

6. 将boostkit-omnidata-hive-exec-3.1.0-1.4.0.zip压缩包内的JAR包拷贝到“/opt/hive/boostkit”目录。
  1 2 cd boostkit-omnidata-hive-exec-3.1.0-1.4.0 cp *.jar /opt/hive/boostkit

  如果用户需要手动编译boostkit-omnidata-hive-exec-3.1.0-1.4.0.jar，可以根据README.md(https://gitee.com/kunpengcompute/omnidata-hive-connector/blob/main/README.md)编译。

7. 新建tez-ndp目录，从HDFS上获取tez.tar.gz（默认路径“/apps/tez/tez.tar.gz”），并解压。
  1 2 3 4 5 cd /opt/hive/ mkdir tez-ndp cd tez-ndp hdfs dfs -get /apps/tez/tez.tar.gz . tar -zxvf tez.tar.gz

8. 将“/opt/hive/boostkit”目录中的boostkit整个目录拷贝到tez-ndp中，并压缩上传至HDFS上，需要删除原始的tez.tar.gz。
  1 2 3 4 5 6 cd /opt/hive/tez-ndp cp -r /opt/hive/boostkit . rm -rf tez.tar.gz tar -zcvf tez.tar.gz * hdfs dfs -rmr /apps/tez/tez.tar.gz hdfs dfs -put tez.tar.gz /apps/tez/

9. 修改配置文件“/usr/local/hive/conf/hive-env.sh”。

  a. 打开文件。

```
vim /usr/local/hive/conf/hive-env.sh
```


  b. 按“i”进入编辑模式，在文件末尾添加以下配置。
    1 2 3 4 export BOOSTKIT_HOME=/opt/hive/boostkit for f in ${BOOSTKIT_HOME}/*.jar; do HIVE_CONF_DIR=${HIVE_CONF_DIR}:$f done

    按“Esc”键，输入:wq!，按“Enter”保存并退出编辑。

10. 修改配置文件“/usr/local/tez/conf/tez-site.xml”。

  a. 打开文件。

```
vim /usr/local/tez/conf/tez-site.xml
```


  b. 按“i”进入编辑模式，在文件末尾添加以下配置。
    1 2 3 4 5 6 7 8 9 10 11 12 <property> <name>tez.user.classpath.first</name> <value>true</value> </property> <property> <name>tez.cluster.additional.classpath.prefix</name> <value>$PWD/tezlib/boostkit/*</value> </property> <property> <name>tez.task.launch.env</name> <value>PATH=/home/omm/omnidata-install/haf-host/bin:$PATH,LD_LIBRARY_PATH=/home/omm/omnidata-install/haf-host/lib:$LD_LIBRARY_PATH,CLASS_PATH=/home/omm/omnidata-install/haf-host/lib/jar/haf-1.3.0.jar:$CLASS_PATH,HAF_CONFIG_PATH=/home/omm/omnidata-install/haf-host/etc/</value> </property>

  c. 按“Esc”键，输入:wq!，按“Enter”保存并退出编辑。
