python - 如何让自适应 dask worker 在启动时运行一些代码?

标签 python dask dask-distributed dask-kubernetes

我正在使用 dask-kubernetes 创建一个 dask 调度程序并将其置于自适应模式。

from dask-kubernetes import KubeCluster
cluster = KubeCluster()
cluster.adapt(minimum=0, maximum=40)

我需要每个工作人员在创建时运行一些设置代码(使用 os.environ 设置一些环境变量)以便任务正确执行。

我在文档中看到有一个 --preload 标志,用于您从命令行启动的工作人员。我猜我需要将其直接设置到某处的自适应调度程序中。

如何将代码传递给我的工作人员以在他们启动时执行?

最佳答案

如果您只需要设置环境变量,那么您可能可以使用 dask-kuberenetes 配置文件来处理它。我认为 KubeCluster 甚至可能有一个 env= 关键字或其他东西。

对于更通用的代码,您认为使用预加载脚本是目前最好的方法是正确的。但这并非在所有情况下都是理想的。理想情况下,您可以使用调度程序注册一些启动代码,以便在所有工作人员启动时将其交给他们。不过,自 2018 年 8 月 1 日起尚未实现。

关于python - 如何让自适应 dask worker 在启动时运行一些代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51631694/

相关文章:

相当于 pd.to_numeric 的 Dask

python - Django 嵌套查询性能

python - 如何在官方 Windows Python 2.5 上使用 time > year 2038

pandas - 将大型数据集与 dask 合并

python - 如何在 dask 分布式中管理单个 worker 上的 GPU 资源?

python - 如何查找 dask 数组分区的行索引

Python:re.compile() 函数中出现两位数错误

python - 通过反斜杠分割在 selenium python 中获得的文本时出错

python - 如何在不使用 pandas merge 将所有数据帧读取到内存的情况下对多个文件执行逐行合并

dask - 触发 Dask worker 释放内存