Spark Streaming:驱动程序拒绝启动接收器

时间:2016-12-14 21:49:29

标签: spark-streaming

我的流媒体作业有多个自定义接收器(10+),启用了检查点。 当我开始工作时,我看到几个接收器一直重启,出现以下错误

[Executor task launch worker-1] receiver.ReceiverSupervisorImpl:使用消息停止接收者:注册失败,因为Driver拒绝启动接收者3:

我搜索并找到http://scala4fun.tumblr.com/post/113172936582/how-to-spread-receivers-over-worker-hosts-in-spark的提示。我们的想法是延迟调度程序,直到有足够数量的执行程序启动。

当我从一个干净的状态开始工作时它起作用。但是,当我使用以前的检查点重新启动作业时,我遇到了同样的问题。许多接收器不断重启。

使用检查点时,技巧看起来不起作用。 我使用以下函数创建StreamingContext,延迟在fucntionToCreateContext中完成

val ssc = StreamingContext.getOrCreate(checkpointDir, functionToCreateContext)

如果使用检查点重新启动作业,如何启动所有接收器?

0 个答案:

没有答案