一、下载驱动
cloudera官网
1.1 官网页面下载
下载页面 的Database Drivers 挑选比较新的版本即可。
1.2 集群下载
Hive可能集群没有驱动包。驱动包名称:HiveJDBC42.jar
。41结尾的包也可以使用的。注意Jar包的大小一定是十几MB的。几百KB的是thin包不可用。
如下的jar是不可用的。
[root@mycentosprod lib]# ll -h | grep jdbc
-rw-r--r-- 1 root root 116K 9月 9 2021 hive-jdbc-2.1.1-cdh6.2.0.jar
Phoenix 包名称:phoenix-5.0.0-cdh6.2.0-client.jar
-sh-4.2$ ll -h | grep client
-rw-r--r--. 1 root root 137M Dec 22 2022 phoenix-5.0.0-cdh6.2.0-client.jar
二、Hive连接(cache方式)
2.1 下载安装MIT KERBEROS客户端
MIT KERBEROS 下载较新的版本即可。
下载之后一路默认安装即可。注意:不要修改软件安装位置。
修改系统环境变量中的Path。将刚刚的安装路径置顶。(不置顶,也要比%JAVA_HOME%\bin
和anaconda
相关的高)
使用CMD命令确认下:
3.2 修改krb5.conf
文件并创建krb5.ini
配置文件
krb5.conf 一般存储在集群的/etc
目录下。
其中conf文件中仅需要保留一下三大项中的内容即可。如果有此项renew_lifetime = 1800d
需要删除或注释(行首添加#
)
[libdefaults]
... ...
[realms]
... ...
[domain_realm]
... ...
将krb5.conf
复制一份并改名为krb5.ini
即可。krb5.ini
是供MIT KERBEROS软件使用的。
修改添加环境变量:
如下两个位置最好不要自定义,都在默认的MIT KERBEROS位置即可。避免不必要的麻烦。
KRB5CCNAME
是MIT KERBEROS软件自动创建的。
2.2 本地认证kerberos
向管理员索取Keytab文件。
打开打开keytab所在位置。按住shift点击右键点击open cmd windos here
,打开CMD窗口。
# 获取pricipal
klist -kt xxx.keytab
# 认证授权
kinit -kt xxx.keytab xxx@XXXXX.COM
# 验证下
klist
验证结果:
同时MIT KERBEROS软件也会获取到成功的结果:
2.3 编辑驱动
2.5 编辑URL链接模板
驱动URL链接模板
-- 注意:KrbAuthType=2;AuthMech=1 是固定的。
jdbc:hive2://{host}[:{port}][/{database}];KrbRealm=XXXXX.COM;KrbHostFQDN={host};KrbServiceName=hive;KrbAuthType=2;AuthMech=1
2.6 测试
三、Phoenix连接
3.1 编写jass.conf
Client {
com.sun.security.auth.module.Krb5LoginModule required
useKeyTab=true
storeKey=true
useTicketCache=false
keyTab="D:/xxx/xxx.keytab"
principal="xxx@XXXXX.COM";
};
com.sun.security.jgss.krb5.initiate {
com.sun.security.auth.module.Krb5LoginModule required
renewTGT=false
doNotPrompt=true
useKeyTab=true
keyTab="D:/env/Kerberos/xxx.keytabs"
principal="xxx@XXXXX.COM"
storeKey=true
useTicketCache=false;
};
3.3 修改dbeaver.ini
打开dbeaver安装目录,找到dbeaver.ini文件进行编辑,追添加如下内容
-Djavax.security.auth.useSubjectCredsOnly=false
-Djava.security.krb5.conf=D:\xxx\krb5.conf
-Dsun.security.krb5.debug=true
-Djava.security.auth.login.config=D:\xxx\jaas.conf
3.4 获取集群配置文件
(1)hadoop的hdfs-site.xml
和core-site.xml
配置文件
(2)hbase的hbase-site.xml
使用压缩工具(如360压缩)打开phoenix-5.0.0-cdh6.2.0-client.jar
,将以上三个配置文件拖入空白处,即自动保存。
3.5 配置驱动
3.6 编辑驱动URL链接模板
路径可以在hbase-site.xml
中获取
<property>
<name>zookeeper.znode.parent</name>
<value>/hbase-secure</value>
</property>
3.7 测试
四、参考连接:
DBeaver连接phoenix
Kerberos环境下使用Dbeaver链接Phoenix
Windows下Dbeaver连接设置Kerberos后的Hive和Phoenix