0

获取以下错误堆栈:

无法在集群中创建 Spark 会话:在 org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1671) 在 org.apache.spark.deploy.SparkSubmit$.doRunMain$1(SparkSubmit.scala:160) ) 在 org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:120) 在 org.apache.spark.deploy 的 org.apache.spark.deploy.SparkSubmit$.submit(SparkSubmit.scala:205)。 SparkSubmit.main(SparkSubmit.scala) ) 在 org.apache.hadoop.hive.metastore.HiveMetaStoreClient.open(HiveMetaStoreClient.java:466) 在 org.apache.hadoop.hive.metastore.HiveMetaStoreClient.(HiveMetaStoreClient.java:234)在 org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient.(SessionHiveMetaStoreClient.java:74) ... 还有 35 个

我的理解应该启用 hive.server2.enable.impersonation 和 hive.server2.enable.doAs 以使 UserGroupInformation.doAs() 工作?

当我尝试启用这些参数时,Cloudera Manager 显示错误

为 Hive Server2 角色“HiveServer2(主机名)”启用了 Hive 模拟。应该禁用 Hive 模拟以使用 Sentry 启用 Hive 授权

所以 Spark-Hive 与 Sentry 发生冲突!?

环境:Hue 3.9 Spark Notebooks + Livy Server(由 master 构建)。CDH 5.5。

这是一个带有 Sentry 的 Kerberized 集群。

我使用hue的keytab,因为hue用户通常(默认情况下在CDH中)被允许模仿其他用户。Spark Notebooks 非常方便。

任何有助于解决此问题的信息将不胜感激。

4

1 回答 1

0

这两个 LIVY jiras 与这个问题有关:

https://issues.cloudera.org/browse/LIVY-49

https://issues.cloudera.org/browse/LIVY-52

于 2016-02-15T20:07:59.420 回答