WindowsDBeaver对接FusionInsight Hive

网友投稿 1072 2022-05-29

DBeaver对接FusionInsight Hive

准备工作

• 登录FusionInsight Manager创建一个“人机”用户,例如:developuser,具体请参见FusionInsight HD产品文档的管理员指南->系统设置->权限设置->用户管理->创建用户章节.给developuser用户授予所有访问权限,包含但不限于Spark2x、Hive、HBase.

• 已完成FusionInsight HD客户端安装,具体请参见FusionInsight HD产品文档的应用开发指南->安全模式->安全认证->配置客户端文件章节.

• 已将集群的节点主机名与IP的映射关系加入到windows的hosts文件中C:\Windows\System32\drivers\etc\hosts.

• 客户端机器的时间与FusionInsight HD集群的时间要保持一致,时间差小于5分钟.

• Windows上已经安装好jdk1.8或者以上版本,并完成jdk环境变量配置.

• Hive数据库已存在表student,数据类似于:

示例如下:

CREATE TABLE IF NOT EXISTS student(id INT, name STRING, class_id INT);

INSERT INTO student VALUES (1,'Tom',1);

INSERT INTO student VALUES (2,'Sandy',2);

INSERT INTO student VALUES (3,'Benny',3);

INSERT INTO student VALUES (4,'Tina',1);

安全认证相关配置

参考产品文档MIT配置相关部分

• 从http://web.mit.edu/kerberos/dist/#kfw-4.0下载对应操作系统架构的MIT Kerberos并安装.

• 设置Kerberos的配置文件.将用户的krb5.conf文件重命名为 krb5.ini 放在C:\Windows目录下.

• 设置Kerberos的配置文件.将用户的krb5.conf文件重命名为 krb5.ini 放在C:\ProgramData\MIT\Kerberos5目录下.

Windows下DBeaver对接FusionInsight Hive

• 设置Kerberos票据的缓存文件

– 在本地创建存放票据的目录,例如C:\temp.

– 设置Windows的系统环境变量,变量名为KRB5CCNAME,变量值为C:\temp\krb5cache.

• 在Windows上进行认证

打开MIT Kerberos,单击 get Ticket ,在弹出的MIT Kerberos: Get Ticket窗口中,Pricipal 输入用户名developuser@HADOOP.COM,Password 输入密码,单击 OK.

• 在C:\ecotesting\Fiber\conf目录下新建 jaas.conf 文件,内容如下所示:

Client {

com.sun.security.auth.module.Krb5LoginModule required

useKeyTab=true

keyTab="C:\\ecotesting\\Fiber\\conf\\user.keytab"

principal="developuser"

useTicketCache=false

storeKey=true

debug=true;

};

注意: 其中keyTab参数以及principal参数为对应的认证用户名以及认证文件路径

安装DBeaver

• 从http://dbeaver.jkiss.org/download/下载DBeaver软件,并完成安装.

• 指定DBeaver的JDK虚拟机.在DBeaver安装目录下,打开dbeaver.ini设置 -vm 参数的值,参数和值之间需要换行.

示例如下:

-vm

C:\Program Files\Java\jdk1.8.0_202\bin

配置文件最后加上:

-Djava.security.auth.login.config=C:\\ecotesting\\Fiber\\conf\\jaas.conf

• 重启DBeaver.修改dbeaver.ini后需要重启DBeaver才生效.

使用自定义JDBC对接Hive

• 进入DBeaver界面,菜单选择Database->DriverManager,在弹出的对话框中点击 New.

• 新建的连接名字为FI-hive-test,连接信息如下,完成后点击OK

1. org.apache.hive.jdbc.HiveDriver

2. jdbc:hive2://172.16.4.121:24002,172.16.4.122:24002,172.16.4.123:24002/;serviceDiscoveryMode=zooKeeper;zooKeeperNamespace=hiveserver2;sasl.qop=auth-conf;auth=KERBEROS;principal=hive/hadoop.hadoop.com@HADOOP.COM

3. Hadoop

4. 点Add File在下载好的hive客户端lib中把所有jar包加进去

• 菜单栏选择File->New->Database Connection.点击 Next.

• 选择FI-hive-test点击NEXT

• 点击Finish

• 右键选择FI-hive-test点击Edit Connection

• 点击Test connection

• 查看结果数据

EI企业智能 FusionInsight

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:怎么应对由于HSS策略造成的ECS内部异常?
下一篇:云享读书会----《程序员修炼之道》笔记1
相关文章