Я пытаюсь выполнить сценарий улья из oozie hive action в среде с поддержкой kerberos.Oozie hive action with kerberos on HDP-1.3.3
Вот мой workflow.xml
<action name="hive-to-hdfs"> <hive xmlns="uri:oozie:hive-action:0.2"> <job-tracker>${jobTracker}</job-tracker> <name-node>${nameNode}</name-node> <job-xml>hive-site.xml</job-xml> <configuration> <property> <name>mapred.job.queue.name</name> <value>${queueName}</value> </property> </configuration> <script>script.q</script> <param>HIVE_EXPORT_TIME=${hiveExportTime}</param> </hive> <ok to="pass"/> <error to="fail"/>
Я столкнулся проблемой при попытке подключиться к улей metastore.
6870 [главная] INFO hive.metastore - Попытка подключения к metastore с URI бережливости: //10.0.0.242: 9083 Сердце бить Сердце бить 67016 [главная] WARN hive.metastore - set_ugi() не удалось, вероятно, причина: новый клиент разговаривает со старым сервером. Продолжая без него. org.apache.thrift.transport.TTransportException: java.net.SocketTimeoutException: Прочитать тайм-аут на org.apache.thrift.transport.TIOStreamTransport.read (TIOStreamTransport.java:129) на org.apache.thrift.transport. TTransport.readAll (TTransport.java:84) на org.apache.thrift.protocol.TBinaryProtocol.readAll (TBinaryProtocol.java:378) на org.apache.thrift.protocol.TBinaryProtocol.readI32 (TBinaryProtocol.java:297)
67018 [main] INFO hive.metastore - Ожидание 1 секунда перед следующей попыткой подключения. 68018 [main] INFO hive.metastore - подключен к метасторе. Heart beat Heart beat 128338 [main] WARN org.apache.hadoop.hive.metastore.RetryingMetaStoreClient - MetaStoreClient потерянное соединение. Попытка повторного подключения. org.apache.thrift.transport.TTransportException: java.net.SocketTimeoutException: Прочитать тайм-аут на org.apache.thrift.transport.TIOStreamTransport.read (TIOStreamTransport.java:129) на org.apache.thrift.transport. TTransport.readAll (TTransport.java:84) на org.apache.thrift.protocol.TBinaryProtocol.readAll (TBinaryProtocol.java:378) на org.apache.thrift.protocol.TBinaryProtocol.readI32 (TBinaryProtocol.java:297)
129339 [главная] INFO hive.metastore - Попытка подключения к metastore с URI бережливости: //10.0.0.242: 9083 Сердце бить Сердце бить 189390 [главная] WARN hive.metastore - set_ugi() не увенчались успехом , Вероятная причина: новый кли nt разговаривает со старым сервером. Продолжая без него. org.apache.thrift.transport.TTransportException: java.net.SocketTimeoutException: Прочитать тайм-аут на org.apache.thrift.transport.TIOStreamTransport.read (TIOStreamTransport.java:129) на org.apache.thrift.transport. TTransport.readAll (TTransport.java:84) на org.apache.thrift.protocol.TBinaryProtocol.readAll (TBinaryProtocol.java:378) на org.apache.thrift.protocol.TBinaryProtocol.readI32 (TBinaryProtocol.java:297)
189391 [main] INFO hive.metastore - Ожидание 1 секунда перед следующей попыткой подключения. 190391 [main] INFO hive.metastore - подключен к метасторе. Сердце бить Сердце бить 250449 [главная] ОШИБКА org.apache.hadoop.hive.ql.parse.SemanticAnalyzer - org.apache.hadoop.hive.ql.metadata.HiveException: Не удалось получить таблицу SESSION_MASTER в org.apache .hadoop.hive.ql.metadata.Hive.getTable (Hive.java:953) at org.apache.hadoop.hive.ql.metadata.Hive.getTable (Hive.java:887) at org.apache.hadoop .hive.ql.parse.SemanticAnalyzer.getMetaData (SemanticAnalyzer.java:1083) в org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.getMetaData (SemanticAnalyzer.java:1059)
Когда я отключить Kerberos рабочий безопасности работает отлично