hiveserver2高可用

恩慈2年前技术文章766

一、安装hiveserver2服务

步骤1. 将正常使用的hive目录复制到安装hiveserver2的节点(hd3节点)

scp -r /opt/hive hd3:/opt/

二、配置hive-site.xml

编辑hive配置文件/opt/hive/conf/hive-site.xml

 

1.删除参数

步骤1. 在所有hiveserver2节点删除如下内容 

      <property>

       <name>hive.server2.active.passive.ha.enable</name>

            <value>true</value>;

       </property>

2.添加参数

     <property>

         <name>hive.server2.thrift.bind.host</name>

         <value>172.16.104.226</value>

     </property>

iphiveserver2本机ip

3.确认参数

在所有hiveserver2节点确认如下参数是否一致不一致请修改

   <property>

        <name>hive.server2.zookeeper.namespace</name>

        <value>hiveserver2_zk</value>

    </property>

------------------------

    <property>

        <name>hive.server2.support.dynamic.service.discovery</name>

        <value>true</value>

    </property>

 

 

 

三、创建认证文件

步骤1. 登陆freeipa依次点击身份---->服务---->添加hd3principal

如下图红框中的内容其中hive为服务名称hd3.ststack.com为主机名DRSTACK.COM为域名请根据实际修改

image.png 

 

步骤2. 登陆hd3节点

 

步骤3. 执行kinit admin

ipa-getkeytab -s hd.dtstack.com -p hive/hd3.dtstack.com@DTSTACK.COM -k /etc/security/keytab/hive.keytab

 

步骤4. 修改keytab权限为644属组为hive:hive

chmod 644 /etc/security/keytab/hive.keytab

chown hive:hive /etc/security/keytab/hive.keytab

image.png 

 

四、添加ranger插件

步骤1. 进入原hiveserver2安装目录

步骤2. scp -r /opt/ranger-2.3.0-hive-plugin hd3:/opt/

步骤3. 编辑 install.properties

vi /opt/ranger-2.3.0-hive-plugin/ install.properties

修改红框中的主机名为当前主机名image.png 

 

步骤4. 执行初始化脚本enable-hive-plugin.s

./enable-hive-plugin.s

 

步骤5. 检查文件是否正常生成

image.png 

 

步骤6. 登陆ranger界面,点击Audit---->PLugins查看权限是否同步

image.png 

五、启动hiveserver2

步骤1. 执行如下命令启动hiveserver2

sudo -u hive /opt/hive/bin/hive --service hiveserver2>/var/log/hive/hiveserver2.log 2>&1 &

 

六、验证

步骤1. 登陆zk节点

cd /opt/zookeeper/bin

./zkCli.sh -server hd2

 

步骤2. 执行ls /hiveserver2_zk结果如下图说明已经成功

image.png 

 

步骤3. 登陆节点执行kinit认证

image.png 

步骤4. 执行beeline命令查看是否可用

beeline -u 'jdbc:hive2://hd1:2181,hd3:2181/;serviceDiscoveryMode=zooKeeper;zooKeeperNamespace=hiveserver2_zk'

        image.png


相关文章

xargs-管道命令符

有时候我们的脚本却需要 echo '516' | kill 这样的效果,例如 ps -ef | grep 'ddd' | kill 这样的效果,筛选出符合某条件的进程pid然后结束。这种需求对于我们来...

压测实操--nnbench压测hdfs_namenode负载方案

压测实操--nnbench压测hdfs_namenode负载方案

本次压测使用nnbench对namenode负载进行性能测试。nnbench生成很多与HDFS相关的请求,给NameNode施加较大的压力,这个测试能在HDFS上创建、读取、重命名和删除文件操作。对应...

数仓主流架构简介之二

数仓主流架构简介之二

一、流批一体数据批流一体是一种云计算架构模式,它结合了批处理和流处理的特点,以实现更高效、灵活和可扩展的数据处理能力。在这种模式下,数据可以同时进行批处理和流处理,以满足不同场景下的需求流批一体:是指...

大数据即席查询-Presto

一、Presto 概念Presto 是一个开源的分布式 SQL 查询引擎,数据量支持 GB 到 PB 字节,主要用来秒级查询的场景。注:虽然 Presto 可以解析 SQL,但它不是一个标准的数据库。...

DBeaver连接Trino

DBeaver连接Trino

1、背景trino 开启https,需要通过dbeaver进行连接DBeaver版本:21.2.02、解决办法下载安装dbeaver打开选择选择trino填写主机如果trino开启https,则可以使...

NameNode和SecondaryNameNode工作详解

NameNode和SecondaryNameNode工作详解

一、NN和SNN工作机制我们可以思考一个问题:NameNode中的元数据是存储在哪里的首先假设,如果存储在NameNode节点的磁盘中,因为经常需要进行随机访问NameNode的元数据,响应客户请求,...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。