驱动程序是否需要持续访问主节点?或者只是它 获得初始资源分配需要?如果主人是,会发生什么 创建Spark上下文后不可用?这是否意味着申请失败?
答案 0 :(得分:13)
主要故障或网络分区导致的第一个也可能是最严重的是您的群集无法接受新的应用程序。这就是当群集与默认配置一起使用时,Master被认为是单点故障的原因。
正在运行的应用程序将确认主要丢失,但除非两个重要的例外,否则这些应该继续或多或少地起作用:
reregisterWithMaster
。如果这个fails multiple times工作人员只是give up。此时长时间运行的应用程序(如流媒体应用程序)将无法继续处理,但仍不应导致立即失败。相反,应用程序将等待主服务器重新联机(文件系统恢复)或来自新领导者的联系人(Zookeeper模式),如果发生这种情况,它将继续处理。答案 1 :(得分:4)
下面是spark应用程序启动时的步骤,
所以,是的,在master上失败会导致执行者无法与之通信。所以,他们将停止工作。 主人失败将使司机无法与其进行通信以获得工作状态。 因此,您的应用程序将失败。
答案 2 :(得分:3)
是的,驱动程序和主服务器在SparkContext的生命周期内不断进行通信。这允许司机:
rdd.count()
在作业完成之前不会终止)并获得结果驱动程序和主服务器之间的断开连接将使作业失败。