我正在使用dask-kubernetes创建一个dask调度程序,并将其置于自适应模式。
from dask-kubernetes import KubeCluster
cluster = KubeCluster()
cluster.adapt(minimum=0, maximum=40)
为了使任务正确执行,我需要每个工作人员在创建它们时运行一些设置代码(使用os.environ
设置一些环境变量)。
我在文档中看到有一个--preload
标志用于您从命令行启动的工作程序。我猜我需要将其直接设置到某个地方的自适应调度程序中。
如何将代码传递给我的工作人员在启动时执行?
答案 0 :(得分:1)
如果您要查找的只是设置环境变量,则可以使用dask-kuberenetes配置文件来处理。我认为KubeCluster甚至可以使用env =关键字之类的东西。
对于更通用的代码,您正确地认为使用预加载脚本是当前最好的方法。不过,这并非在所有情况下都是理想的。理想情况下,您将能够在调度程序中注册一些启动代码,以在所有工人启动时移交给他们。截至2018-08-01尚未实施。