在开始工作/任务之前对每个工作人员运行一个流程

时间:2017-06-12 09:12:15

标签: apache-spark

尝试在启动作业/任务之前找出在所有工作人员中启动/运行外部流程的方法。

特定用例 - 我的工作命中节点上运行的服务(localhost)。服务本身通过docker容器运行。我想在启动worker上的任务之前启动docker容器,然后在所有作业完成后停止容器。

一种方法可能是rdd.mapPartitions,但那是在执行程序级别,我不能干净地停止,因为另一个分区可能在同一节点上执行。有什么建议吗?

作为一种解决方法,目前我在启动集群本身时启动了docker容器,但这不允许我使用不同作业可能需要的多个不同容器(因为在这种情况下,所有容器都将在一直占用节点资源。)

0 个答案:

没有答案