无法通过 dask 扩展集群

Unable to expand cluster by dask

我是 kubernetes 和 dask 的新手,正在尝试实现一些 kube 集群并创建了带有一些服务的 minikube 集群,进一步希望通过灵活的 dask 功能扩展它。

我计划稍后以某种方式将它部署到 gcloud,所以我试图从带有 RBAC 的 pod 和 python 脚本初始化 dask 集群(调度程序和工作程序到我的 minikube 集群),但我的尝试是没成功。

我在 KubeCluster 中尝试了本地和远程 deploy_mode 只是为了找到一些可行的解决方案,但我想它一定是远程的。

在 运行 这个 python 脚本之后

pod_spec = make_pod_spec(image='daskdev/dask:latest',
                         memory_limit='2G', memory_request='2G',
                         cpu_limit=1, cpu_request=1, threads_per_worker=1,
                         env={'EXTRA_PIP_PACKAGES': 'git+https://github.com/dask/distributed'})

scheduler = make_pod_spec(image='daskdev/dask:latest',
                          memory_limit='1G', memory_request='1G',
                          cpu_limit=1, cpu_request=1, threads_per_worker=1,
                          env={'EXTRA_PIP_PACKAGES': 'git+https://github.com/dask/distributed'},
                          )

cluster = KubeCluster(scheduler_pod_template=scheduler, pod_template=pod_spec, n_workers=2,
                      auth=auth.InCluster())

cluster.adapt(minimum=1, maximum=4)

我在调度程序 pod 日志中得到 ValueError: missing port number in address '$(DASK_SCHEDULER_ADDRESS)'

Full logs of a scheduler pod

我是否错过了在 pod 规范中设置一些环境变量?不是必须自动设置吗?

如果有帮助,当我将部署模式设置为本地时,客户端构造函数会引发错误,提示未设置调度程序端口或类似的错误。我尝试手动设置它,但它一直引发此错误。

我将非常感谢任何实施此建议的建议

我发现不可能把make_pod_spec当作scheduler_pod_template来用。对于那些想要那个功能的人,我已经打开了 pull request.