周口建设企业网站公司,做网站需要的手续,博宇娱乐网站建设,手机网址导航主页哪个好背景#xff1a;由于工作需要#xff0c;当前分析研究的数据基于Hadoop的Hive数据库中#xff0c;且Hadoop服务端无权限进行操作且使用安全模式#xff0c;在研究了Dbeaver、Squirrel和Hue三种连接Hive的工具#xff0c;在无法绕开useKey认证的情况下#xff0c;只能使用… 背景由于工作需要当前分析研究的数据基于Hadoop的Hive数据库中且Hadoop服务端无权限进行操作且使用安全模式在研究了Dbeaver、Squirrel和Hue三种连接Hive的工具在无法绕开useKey认证的情况下只能使用DBeaver工具进行远程连接。 【Hadoop环境】Hive版本3.1.0 KrbClient版本1.17 【JDK版本】1.8.0_181 一、 配置 Windows 的 kerberos 认证 注由于当前Hadoop服务算使用FusionInsight安全模式需要使用kerberos进行认证如果使用 FusionInsight非安全模式进行对接不需要使用 kerberos认证。 前置条件已完成 FusionInsight HD V100R002C70SPC200 的安装包含 KrbServer 组件。配置kerberos认证 步骤 1 下载并安装 MIT Kerberos 下载网址http://web.mit.edu/kerberos/dist/。 版本与操作系统位数保持一致本文版本 kfw-4.1-amd64.msi。 安装路径C:\Program Files\MIT\Kerberos默认路径 步骤 2同步客户端机器的时间 与 FusionInsight HD 集群的时间一致时间差要小于 5 分钟。 步骤 3 设置 Kerberos 的配置文件 登录FusionInsight服务端页面点击右上角“用户名”-“下载认证凭据”后保存至本地解压获取krb5.conf和user.keytab文件。 C盘创建文件目录ecotesting/Fiber/conf文件夹目录目录创建可自定义但需记住文件的绝对路径如C:/ ecotesting/Fiber/conf将krb5.conf和user.keytab文件负责到当前conf文件夹下。 复制krb5.conf文件修改文件后缀为.ini保存文件为krb5.ini注意在windows中设置显示文件后缀不然文件可能保存为krb5.ini.txt文件。 将krb5.ini文件复制到如下目录中“C:\Program Files\MIT\Kerberos”、“C:\Windows”、“C:\ProgramData\MIT\Kerberos5”。其中“C:\ProgramData\MIT\Kerberos5”为系统隐藏文件夹直接输入路径可进入。 步骤 4 设置 Kerberos 票据的缓存文件和环境变量 创建存放票据的目录例如“C:\temp”。设置 Windows 的系统环境变量变量名为“KRB5CCNAME”变量值为“C:\temp\krb5cache”变量名为“KRB5_CONFIG”变量值为“C:/ ecotesting/Fiber/conf/krb5.ini”。配置完成后重启机器。
步骤 5 在 Windows 上进行认证 1使用客户端进行认证 打开 MIT Kerberos单击“get Ticket”在弹出的 MIT Kerberos: Get Ticket 窗口中Pricipal 输入用户名(如sxappoptHADOOP.COM)Password 输入密码单击“OK”。 2通过命令行进行认证 打开windows命令行窗口进入到MIT安装目录如: C:\Program Files\MIT\Kerberos\bin使用keytab文件进行认证并查看认证信息是否正确以及认证缓存文件是否生成。 认证命令kinit –kt keytabPath principlekeytabPath为keytab文件所在路径principle为认证用户名 如kinit –kt C:/ ecotesting/Fiber/conf/user.keytab gzdsj_ruixin
二、 安装Dbeaver客户端
下载并安装 DBeaver 由于本地jdk版本为1.8.0_181考虑到版本兼容性下载DBeaver版本为21.1.1版本。PS勿安装最新版本22.3.4版在windows hosts文件中添加集群的ip和域名 登录FusionInsight服务端页面选择主页—集群—集群名右击选择“下载客户端”然后选择“仅下载配置文件”下载至本地后解压复制hosts至本地“C:\Windows\System32\drivers\etc”进行替换。创建Zookeeper认证文件 在C:\ecotesting\Fiber\conf目录下新建 jaas.conf 文件配置认证的用户和密码。文件内容如下
Client {com.sun.security.auth.module.Krb5LoginModule requireduseKeyTabtruekeyTabC:\\ecotesting\\Fiber\\conf\\user.keytabprincipalgzdsj_ruixinuseTicketCachefalsestoreKeytruedebugtrue;
};注意 其中keyTab参数以及principal参数为对应的认证用户名以及认证文件路径。修改DBeaver配置文件dbeaver.ini文件 指定Dbeaver使用的JDK虚拟机添加注意参数和值之间需要换行
-vm
C:\Program Files\Java\jdk1.8.0_181\bin添加认证配置信息
-Djava.security.auth.login.configC:\\ecotesting\\Fiber\\conf\\jaas.conf
-Dzookeeper.sasl.clientconfigClient
-Dzookeeper.auth.typekerberos
-Dzookeeper.server.principalzookeeper/hadoop.hadoop.com重启DBeaver. 修改dbeaver.ini后需要重启DBeaver才生效。获取org.apache.hive.jdbc.HiveDriver驱动依赖jar包 在Linux中Hive客户端安装路径下获取HiveDriver驱动依赖jar包。进入/opt/client/Hive/Beeline/目录下下载lib文件夹至DBeaver安装路径默认为C:\Program Files\Dbeaver下。
三、 使用自定义JDBC对接Hive
进入DBeaver界面菜单选择Database-DriverManager在弹出的对话框中点击 New. 新建的连接名字为FI-hive-test连接信息如下,完成后点击OK
说明- org.apache.hive.jdbc.HiveDriver
2.jdbc:hive2://172.16.4.121:24002,172.16.4.122:24002,172.16.4.123:24002/;serviceDiscoveryModezooKeeper;zooKeeperNamespacehiveserver2;sasl.qopauth-conf;authKERBEROS;principalhive/hadoop.hadoop.comHADOOP.COM
具体信息可Linux中的Hive客户端通过beeline连接成功打印的日志中截取复制使用- Hadoop- 点Add File在下载好的hive客户端lib中把所有jar包加进去菜单栏选择File-New-Database Connection.点击 Next. 选择FI-hive-test点击NEXT 点击Finish 右键选择FI-hive-test点击Edit Connection 点击Test connection