Spark操作Hive(开启Kerberos认证)代码提交华为云DAYU的MRS Spark组件--方法流程及注意事项
背景:最近在测试华为云DAYU MRS Spark操作Hive的流程,因kerberos认证的问题一直测试失败。代码示例:val sparkSession = SparkSession.builder().appName(this.getClass.getSimpleName.filter(!_.equals('$'))).enableHiveSupport().getOrCreate()val
背景:
最近在测试华为云DAYU MRS Spark操作Hive的流程,因kerberos认证的问题一直测试失败。
代码示例:
val sparkSession = SparkSession.builder()
.appName(this.getClass.getSimpleName.filter(!_.equals('$')))
.enableHiveSupport()
.getOrCreate()
val sc: SparkContext = sparkSession.sparkContext
sc.setLogLevel("WARN")
sparkSession.sql("show databases").show()
sparkSession.stop()
官网说明:
华为DAYU的MRS Spark默认提交方式为yarn-cluster,因此只能采用命令认证和配置认证。
测试认证
因配置认证一直没有测试成功,最终选用的命令认证的方式。
(1)将创建用户后得到的user.keytab文件放到服务器的/opt/client/Spark/spark/conf目录下
(2)命令行认证:kinit -kt /opt/client/Spark/spark/conf/user.keytab zyn(zyn为我创建的用户)
(3)上传代码包到DAYU的MRS Spark
(4)运行成功

命令认证的优化
(1)将user.keytab放到master节点服务器的某个路径;
(2)创建一个shell链接,运行spark代码前先执行shell脚本;
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)