Hive APACHE演练:在启用kerbros的情况下连接到配置单元时出现问题

Hive APACHE演练:在启用kerbros的情况下连接到配置单元时出现问题,hive,hadoop2,apache-drill,Hive,Hadoop2,Apache Drill,我有一个kerbroized集群,我在另一台服务器上安装了drill,我正在尝试使用hive,它是kerbroized集群的一部分 作为配置单元的一部分,我在drill-override.conf上设置了以下配置 drill.exec: { security: { # user.auth.enabled:true, auth.mechanisms:["KERBEROS"], auth.principal:"xxxx/xxxxxxxx",

我有一个kerbroized集群,我在另一台服务器上安装了drill,我正在尝试使用hive,它是kerbroized集群的一部分

作为配置单元的一部分,我在drill-override.conf上设置了以下配置

    drill.exec: {
    security: {
     # user.auth.enabled:true,
      auth.mechanisms:["KERBEROS"],
      auth.principal:"xxxx/xxxxxxxx",
      auth.keytab:"/xxx/xxxx/drill.keytab"
    drill.exec.http.ssl_enabled="true"
     }
  }
drill.exec:
{
 cluster-id: "drillbits1",
 zk.connect: "localhost:2181"
}

当我从演练ui访问配置单元时,出现以下错误:

 2017-04-07 12:32:48,322 [2718c667-5587-b307-58f7-b673e29b7dbf:frag:0:0]          WARN  o.a.d.e.s.h.schema.HiveSchemaFactory - Failure while getti
  ng Hive database list.
    org.apache.thrift.TException: java.util.concurrent.ExecutionException:           MetaException(message:Got exception: org.apache.thrift.transport.
 TTransportException null)
我已尝试使用drill版本:1.5.0,1.10.0


请提供任何帮助以解决此问题。

您在drill-override.conf中提到的配置用于使用kerberos的DrillClient到Drillbit连接

对于Hive,我认为我们以前没有尝试过,但根据一些研究,我认为您可以尝试在您的Drill Hive存储插件中添加以下内容。另外,请确保您已经使用kinit命令为正在运行钻取的流程用户在钻取节点上生成了kerberos票证。如果有帮助的话,请试着告诉我们

{
  "type": "hive",
  "enabled": true,
  "configProps": {
    "hive.metastore.uris": "thrift://<metastore_ip:port>",
    "hive.metastore.sasl.enabled": "true",
    "hive.metastore.kerberos.principal": "<metastore_kerberos_principal"
  }
}