1 概述
本文介绍如何连接带kerberos认证Spark SQL数据库。
2 数据连接
2.1 环境准备
(1)找到服务器路径下的hosts文件:
- Windows环境路径:C:\Windows\System32\drivers\etc
- Linux环境路径:/etc/hosts
(2)打开hosts文件,添加所有Hive集群节点服务器,sparksql集群节点服务器、kerberos认证服务器的IP跟主机名映射关系。
2.2 Kerberos认证文件
联系hive集群管理员获取Krb5文件、KeyTab文件,并上传到Smartbi的服务器上。
1)注意:需要确保smartbi服务器时间和spark sql集群的时间同步。
2.3 配置自定义驱动包
添加jdbc驱动依赖包,下图的jar包仅供参考。
说明:
1)建议把hive集群的beeline客户端lib目录的所有jar包都放到SPARK_SQL目录
2)下载db.properties文件,并上传到SPARK_SQL目录
将以上依赖jar包和db.properties文件放置SPARK_SQL目录(如果不存在需要手动创建),Smartbi可自动加载,无需重启服务器。
2.4 连接步骤
(1)在数据连接的关系数据库中,选择新建Spark SQL数据源。
(2)配置连接信息如图:
主要配置信息说明:
配置项 | 说明 |
---|---|
名称 | 数据源连接名称,不可为空 |
驱动程序存放目录 | 选择“自定义”并在下拉框中选择”Spark SQL" |
连接字符串 | beeline客户端连接SPARK_SQL集群的连接URL。 |
连接方式 | Kerberos认证 |
客户端PR | keytab文件对应的principal,由hive集群管理员提供 |
Krb5文件路径 | krb5.conf的存放路径,krb5.conf文件由hive集群管理员提供 |
KeyTab文件路径 | keytab的存放路径,keytab文件由hive集群管理员提供 |
1)keytab与krb5conf文件路径更换成Smartbi所在机器的路径,Linux与Windows分隔只能使用 "/";
2)keytab文件、krb5.conf文件、principal信息必须互相匹配。
(3)点击 测试连接 按钮,提示连接成功后保存,连接Spark SQL数据库完成。