栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

DBeaver连接Kerberos认证下的hive

DBeaver连接Kerberos认证下的hive

DBeaver连接Kerberos认证模式的hive
  • 背景介绍
  • 环境介绍
  • 工作机环境配置
    • 1、配置本地hosts
    • 2、安装Kerberos客户端
    • 3、配置window环境(变量和配置文件)
      • 配置krb5.ini
      • 配置环境变量
  • DBeaver 配置
    • DBeaver安装
    • DBeaver配置修改
    • DBeaver 连接配置修改
      • 1、下载驱动
    • 进行Kerberos认证
      • 1、打开Kerberos客户端
      • 2、调整Kerberos环境变量位置
      • 3、DOS端口进行Kerberos认证登录
  • 重启工作机

背景介绍

DBeaver是一款功能强大丰富的数据源连接工具,可以连接MySQL、hive等常见的各种数据源,通过DBeaver连接未开启Kerberos认证的hive比较简单。本文主要介绍如何连接开启了Kerberos认证的hive数据源。

环境介绍

集群环境 :4台Linux机器,centos7.4操作系统 集群版本为cdh6.2.0
工作机:一台window10系统的办公电脑。

工作机环境配置 1、配置本地hosts

因为Kerberos认证过程及集群服务中,很多是以主机名的形式进行访问的,所以工作机要设置hosts. 域名映射,我们通过部署CDH的集群的每一台机器都已经配置了host(文件为/etc/hosts),工作机也需要配置
window的host文件路径为:

如果提示无法修改,一般是需要管理员权限的原因,比较简单的方式是先将文件移出来,修改完成之后再放进去。

修改如下:

2、安装Kerberos客户端

下载地址:https://web.mit.edu/kerberos/dist/index.html
选择msi安装包

然后一路next即可。选择是否要重启电脑的时候选择No,稍后统一重启。

3、配置window环境(变量和配置文件) 配置krb5.ini

上一步安装的Kerberos客户端的时候,会默认生成C:ProgramDataMITKerberos5krb5.ini文件,我们根据已经存在的KDC Server上的/etc/krb5.conf,拷贝部分内容到krb5.ini中,如果直接将krb5.conf文件更名为krb5.ini并替换krb5.ini,会出现文件格式问题导致MIT Kerberos客户端无法正常启动。

注意:默认C:ProgramData是一个隐藏目录,默认是不显示的,可以通过如下设置将其显示出来。

拷贝完成后内容如下:

配置环境变量

配置环境变量krb5.ini以及Kerberos Credential Cache File的路径,

变量名:KRB5_CONFIG,变量值:C:ProgramDataMITKerberos5krb5.ini。
变量名:KRB5CCNAME,变量值:C:tempkrb5cache。
KRB5CCNAME的路径默认是不存在的,因此需要在C盘下创建temp文件夹,krb5cache文件则不需要创建。

DBeaver 配置 DBeaver安装

安装包下载地址如下,推荐使用免安装版本。

解压完即可使用。

DBeaver配置修改

因为DBeaver是通过JDBC的方式访问Hive,底层也是基于Java环境,所以这里需要在DBeaver的配置中增加JVM的参数,添加关于Kerberos相关的配置。进入DBeaver的安装目录,找到dbeaver.ini配置文件,在配置文件末尾增加如下配置,重新启动DBeaver客户端。

-Djavax.security.auth.useSubjectCredsOnly=false
-Djava.security.krb5.conf="C:ProgramDataMITKerberos5krb5.ini"
-Dsun.security.krb5.debug=true
DBeaver 连接配置修改

目前只测试通过了基于Cloudera驱动创建的连接,所以只说明这一种方式

1、下载驱动

下载地址:https://www.cloudera.com/downloads/connectors/hive/jdbc/2-6-5.html

这里需要登录Cloudera, 需要注册账号
解压后得到里面的HiveJDBC41.jar 这个驱动包,这个包里面包含了完整的依赖。

然后进入DBeaver的驱动设置界面。



设置完驱动之后,我们修改一下URL模板

在URL模板中增加如下参数:

;AuthMech=1;KrbRealm=MYCDH.COM;KrbHostFQDN={host};KrbServiceName=hive;KrbAuthType=2

点击确定完成驱动设置,填写替换{host}变量的主机地址

进行Kerberos认证 1、打开Kerberos客户端

从桌面的快捷方式进入,进入后如下
![在这里插入图片描述](https://img-blog.csdnimg.cn/398f25fc7b1b420b8b485053ac6380b7.png

2、调整Kerberos环境变量位置

因为kinit命令跟JDK有冲突,所以要将环境变量Path中,dbeaver的顺序放到JDK之前

3、DOS端口进行Kerberos认证登录


该步骤需要先将hive.keytab 放入F盘下,登录之后Kerberos客户端会显示登录的票据。

重启工作机

然后再重新打开DBeaver 连接测试。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/650358.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号