赞
踩
1. 学习一下SSH隧道原理。
2. 确保机器的某一端口可以被ssh。(找一台机器,用ssh命令试一下。)
由于一般公司22端口是被封的,所以只能另开端口。方法网上一堆,博主开的端口是10001
点击Test Connection 成功后;进行下一步。
本地端口要写hive端口。一般10000
没有Kerberos的,直接跳过即可。
下载Kerberos客户端 https://web.mit.edu/kerberos/
配置环境变量:
KRB5_CONFIG E:\kerboers_auth\krb5\krb5.ini
KRB5CCNAME E:\kerboers_auth\temp\krb5cache
环境变量里的路径,一定要保证有这两个文件。
krb5cache 直接新建一个空文件就行,把后缀删掉
获取krb5.conf 与 keytab 文件
之所以环境变量配krb5.ini是因为windows环境可以直接编辑。
放一个krb5.ini的模板:
- [libdefaults]
- renew_lifetime = 7d
- forwardable = true
- default_realm = hadoop.ws
- ticket_lifetime = 24h
- dns_lookup_realm = false
- dns_lookup_kdc = false
- #default_ccache_name = /tmp/krb5cc_%{uid}
- #default_tgs_enctypes = aes des3-cbc-sha1 rc4 des-cbc-md5
- #default_tkt_enctypes = aes des3-cbc-sha1 rc4 des-cbc-md5
-
- [realms]
- hadoop.ws = {
- admin_server = kerberos-2.hadoop.ws
- kdc = kerberos-2.hadoop.ws
- kdc = kerberos-3.hadoop.ws
- kdc = kerberos-4.hadoop.ws
- }
接下来执行kinit
kinit -kt E:\kerboers_auth\krb5\urc.keytab urc@hadoop.ws
如果报错,环境变量path里添加 ;C:\Program Files\MIT\Kerberos\bin
成功后,安装的客户端里会有票据的过期时间。
好了,windows 这边配置好了。接下来配置DataGrip
修改url模板。
jdbc:hive2://{host::localhost}?[:{port::10000}][/{database:::schema}?];principal=hive/aabb.hadoop.ws@hadoop.ws[;<;,user={user},password={password},{:identifier}={:identifier}>]
把这段 principal=hive/aabb.hadoop.ws@hadoop.ws 换成你自己的地址。
不然会报错 Unable to apply SSH settings: Host & port not found. Fix URL or create template
修改连接属性:
- -Djava.security.krb5.debug=true
- -Djava.security.krb5.conf=E:\kerboers_auth\krb5\krb5.ini
- -Djavax.security.auth.useSubjectCredsOnly=false
好了。Kerberos 配置完成了。
不用点赞。估计没人看到这里。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。