等待HiveServer2与远程Spark驱动程序之间的SASL协商完成时超时

问题描述 投票:0回答:1

我正在使用蜂巢和火花研究CDH 6.3.0,我正面临一个困扰我一周的问题。我已经从头开始安装了,什么都没解决。

当我尝试从表中选择时发生超时。

考虑此:

DROP TABLE dashboard.top10;
CREATE TABLE dashboard.top10 (id VARCHAR(100), floatVal DOUBLE)
STORED AS ORC tblproperties("compress.mode"="SNAPPY");
INSERT into dashboard.top10 SELECT * from analysis.total_raw  order by floatVal DESC limit 10;

处理语句时出错:失败:执行错误,返回代码来自org.apache.hadoop.hive.ql.exec.spark.SparkTask的30041。失败为Spark会话创建Spark客户端faf8afcb-0e43-4097-8dcb-44f3f1445005_0:java.util.concurrent.TimeoutException:客户端'faf8afcb-0e43-4097-8dcb-44f3f1445005_0'超时等待通过远程Spark驱动程序进行连接

我的猜测是未考虑超时设置。作为测试环境,我的延迟可能会超过1秒]

警告:忽略非火花配置属性:hive.spark.client.server.connect.timeout = 90000警告:正在忽略非火花配置属性:hive.spark.client.connect.timeout

容器由于错误而退出:

exception: java.util.concurrent.ExecutionException: java.util.concurrent.TimeoutException: Timed out waiting to connect to HiveServer2.
    at io.netty.util.concurrent.AbstractFuture.get(AbstractFuture.java:41)
    at org.apache.hive.spark.client.RemoteDriver.<init>(RemoteDriver.java:155)
    at org.apache.hive.spark.client.RemoteDriver.main(RemoteDriver.java:559)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.apache.spark.deploy.yarn.ApplicationMaster$$anon$2.run(ApplicationMaster.scala:673)
Caused by: java.util.concurrent.TimeoutException: Timed out waiting to connect to HiveServer2.
    at org.apache.hive.spark.client.rpc.Rpc$2.run(Rpc.java:120)
    at io.netty.util.concurrent.PromiseTask$RunnableAdapter.call(PromiseTask.java:38)
    at io.netty.util.concurrent.ScheduledFutureTask.run(ScheduledFutureTask.java:120)
    at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163)
    at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:403)
    at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:463)
    at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:858)
    at java.lang.Thread.run(Thread.java:748)
)
19/08/26 17:15:11 ERROR yarn.ApplicationMaster: Uncaught exception: 
org.apache.spark.SparkException: Exception thrown in awaitResult: 
    at org.apache.spark.util.ThreadUtils$.awaitResult(ThreadUtils.scala:226)
    at org.apache.spark.deploy.yarn.ApplicationMaster.runDriver(ApplicationMaster.scala:447)
    at org.apache.spark.deploy.yarn.ApplicationMaster.run(ApplicationMaster.scala:275)
    at org.apache.spark.deploy.yarn.ApplicationMaster$$anon$3.run(ApplicationMaster.scala:805)
    at org.apache.spark.deploy.yarn.ApplicationMaster$$anon$3.run(ApplicationMaster.scala:804)
    at java.security.AccessController.doPrivileged(Native Method)
    at javax.security.auth.Subject.doAs(Subject.java:422)
    at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1875)
    at org.apache.spark.deploy.yarn.ApplicationMaster$.main(ApplicationMaster.scala:804)
    at org.apache.spark.deploy.yarn.ApplicationMaster.main(ApplicationMaster.scala)
Caused by: java.util.concurrent.ExecutionException: java.util.concurrent.TimeoutException: Timed out waiting to connect to HiveServer2.
    at io.netty.util.concurrent.AbstractFuture.get(AbstractFuture.java:41)
    at org.apache.hive.spark.client.RemoteDriver.<init>(RemoteDriver.java:155)
    at org.apache.hive.spark.client.RemoteDriver.main(RemoteDriver.java:559)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.apache.spark.deploy.yarn.ApplicationMaster$$anon$2.run(ApplicationMaster.scala:673)
Caused by: java.util.concurrent.TimeoutException: Timed out waiting to connect to HiveServer2.
    at org.apache.hive.spark.client.rpc.Rpc$2.run(Rpc.java:120)
    at io.netty.util.concurrent.PromiseTask$RunnableAdapter.call(PromiseTask.java:38)
    at io.netty.util.concurrent.ScheduledFutureTask.run(ScheduledFutureTask.java:120)
    at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163)
    at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:403)
    at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:463)
    at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:858)
    at java.lang.Thread.run(Thread.java:748)
19/08/26 17:15:11 INFO yarn.ApplicationMaster: Deleting staging directory hdfs://masternode.vm:8020/user/root/.sparkStaging/application_1566847834444_0003
19/08/26 17:15:16 INFO util.ShutdownHookManager: Shutdown hook called

我提出了超时(作为测试),但没有成功:

hive.metastore.client.socket.timeout=360s
hive.spark.client.connect.timeout=360000ms
hive.spark.client.server.connect.timeout=360000ms
hive.spark.job.monitor.timeout=180s

我还仔细检查了每个节点的名称解析,一切都很好,但是我没有使用DNS,而是使用主机文件。

  • 集群上的SO VM:CentOS 7
  • Apache Spak版本2.4.0-cdh6.3.0
  • Cloudera版本CDH 6.3
  • Hive版本:2.1.1-cdh6.3.0,re1e06dfe7de385554f2ec553009ef8452c5fd25a
apache-spark hive yarn cloudera-cdh
1个回答
0
投票

在CDH 6.2:set hive.spark.client.future.timeou=360;可以!

© www.soinside.com 2019 - 2024. All rights reserved.