安装jce,jce去oracle官网下载
[root@node1 ~]# \cp -rf UnlimitedJCEPolicyJDK8/* /usr/jdk1.8.0_231/jre/lib/security/
#所有机器都要执行
[root@node1 ~]# unzip jce_policy-8.zip
Archive: jce_policy-8.zip
creating: UnlimitedJCEPolicyJDK8/
inflating: UnlimitedJCEPolicyJDK8/local_policy.jar
inflating: UnlimitedJCEPolicyJDK8/README.txt
inflating: UnlimitedJCEPolicyJDK8/US_export_policy.jar
[root@node1 ~]# \cp -rf UnlimitedJCEPolicyJDK8/* /usr/jdk1.8.0_231/jre/lib/security/
#但从Java 1.8.0_151和1.8.0_152开始,为JVM启用无限制强度管辖策略 有了一种新的更简单的方法。
#在 jre/lib/security 文件夹中查找文件 java.security,现在用文本编辑器打开java.security,并找到定义java安全性属性crypto.policy的行,它可以有两个值limited或unlimited - 默认值是limited。将其设置为:crypto.policy=unlimited
登录ambari的web控制台--》点击 enable kerberos-->proceed anyway
后面操作基本点next即可(确保前面的kdc配置与kerberos管理员账号密码没有错误即可)
方法一:
/usr/hdp/current/zookeeper-client/bin/zkCli.sh -server 主机dns名称:2181 #注意不能是IP
方法二:
export JVMFLAGS="-Djava.security.auth.login.config=/etc/zookeeper/conf/zookeeper_jaas.conf"
先用kinit获取身份,本过程省略
再通过beeline链接,替换连着中使用的连接串
beeline -u 'jdbc:hive2://<beelineserver>:10000/default;principal=<username>/_HOST@<kerberosdeamname>'
例如 beeline -u 'jdbc:hive2://example.com:10000/default;principal=hiveuser/_HOST@example.com'
再admin--> disable kerberos --> 按照提示进行-->输入kerbero admin的账号密码 -->直到完成
问题:注意在关闭kerberos认证最后启动service时,服务启动失败,无法点完成,会一直重启一直失败,直接关闭页面,打开新的页面即可。(总体感觉hdp集群比cdh健壮性要差一些)