When Kerberos is enabled, I get the following exceptions. (Spark 1.2.1 git 
commit 








b6eaf77d4332bfb0a698849b1f5f917d20d70e97, Hive 0.13.1, Apache Hadoop 2.4.1) 
when starting Spark ThriftServer.
Command to start thriftserver
./start-thriftserver.sh --hiveconf hive.server2.thrift.port=20000 --hiveconf 
hive.server2.thrift.bind.host=$(hostname) --master yarn-client
Error message in spark.log

2015-03-13 18:26:05,363 ERROR 
org.apache.hive.service.cli.thrift.ThriftCLIService 
(ThriftBinaryCLIService.java:run(93)) - Error: 
java.lang.IllegalArgumentException: Unknown auth type: null Allowed values are: 
[auth-int, auth-conf, auth]
        at org.apache.hive.service.auth.SaslQOP.fromString(SaslQOP.java:56)
        at 
org.apache.hive.service.auth.HiveAuthFactory.getSaslProperties(HiveAuthFactory.java:118)
        at 
org.apache.hive.service.auth.HiveAuthFactory.getAuthTransFactory(HiveAuthFactory.java:133)
        at 
org.apache.hive.service.cli.thrift.ThriftBinaryCLIService.run(ThriftBinaryCLIService.java:43)
        at java.lang.Thread.run(Thread.java:744)

I'm wondering if this is due to the same problem described in HIVE-8154 
HIVE-7620 due to an older code based for the Spark ThriftServer?
Any insights are appreciated. Currently, I can't get Spark ThriftServer to run 
against a Kerberos cluster (Apache 2.4.1).

My hive-site.xml looks like the following for spark/conf.








<property>
  <name>hive.semantic.analyzer.factory.impl</name>
  <value>org.apache.hcatalog.cli.HCatSemanticAnalyzerFactory</value>
</property>
<property>
  <name>hive.metastore.execute.setugi</name>
  <value>true</value>
</property>
<property>
  <name>hive.stats.autogather</name>
  <value>false</value>
</property>
<property>
  <name>hive.session.history.enabled</name>
  <value>true</value>
</property>
<property>
  <name>hive.querylog.location</name>
  <value>/home/hive/log/${user.name}</value>
</property>
<property>
  <name>hive.exec.local.scratchdir</name>
  <value>/tmp/hive/scratch/${user.name}</value>
</property>
<property>
  <name>hive.metastore.uris</name>
  <value>thrift://somehostname:9083</value>
</property>
<!-- HIVE SERVER 2 -->
<property>
  <name>hive.server2.authentication</name>
  <value>KERBEROS</value>
</property>
<property>
  <name>hive.server2.authentication.kerberos.principal</name>
  <value>***</value>
</property>
<property>
  <name>hive.server2.authentication.kerberos.keytab</name>
  <value>***</value>
</property>
<property>
  <name>hive.server2.thrift.sasl.qop</name>
  <value>auth</value>
  <description>Sasl QOP value; one of 'auth', 'auth-int' and 
'auth-conf'</description>
</property>
<property>
  <name>hive.server2.enable.impersonation</name>
  <description>Enable user impersonation for HiveServer2</description>
  <value>true</value>
</property>
<!-- HIVE METASTORE -->
<property>
  <name>hive.metastore.sasl.enabled</name>
  <value>true</value>
</property>
<property>
  <name>hive.metastore.kerberos.keytab.file</name>
  <value>***</value>
</property>
<property>
  <name>hive.metastore.kerberos.principal</name>
  <value>***</value>
</property>
<property>
  <name>hive.metastore.cache.pinobjtypes</name>
  <value>Table,Database,Type,FieldSchema,Order</value>
</property>
<property>
  <name>hdfs_sentinel_file</name>
  <value>***</value>
</property>
<property>
  <name>hive.metastore.warehouse.dir</name>
  <value>/hive</value>
</property>
<property>
  <name>hive.metastore.client.socket.timeout</name>
  <value>600</value>
</property>
<property>
  <name>hive.warehouse.subdir.inherit.perms</name>
  <value>true</value>
</property>                                       

Reply via email to