我们有两个集群,生产集群a和开发集群b。在集群b中,创建的配置单元表指向集群a中的HDF(https://docs.cloudera.com/hdpdocuments/hdp2/hdp-2.6.5/bk_data-access/content/querying-remote-clusters.html). 我们可以成功地查询集群b中的表,并按预期返回数据(存储在集群a中的记录),然后我们有一些pyspark代码使用以下方法查询表:
sqlContext.sql("query tables in B that point to HDFS in A")
该代码在交互式pyspark会话中运行良好,但作为批处理作业运行时,我们得到:
org.apach.hadoop.security.AccessControlException: Client cannot authenticate via: [TOKEN,KERBEROS]
考虑到它在交互模式下工作,在我看来某种类型的配置或权限(或者kerberos)可以修复它,但是支持团队中的一些成员认为这是spark的一个限制无法修复,我们如何使这个2集群(其中1个dev集群指向另一个生产集群中的hdfs)与批处理spark代码一起工作?
暂无答案!
目前还没有任何答案,快来回答吧!