Hello!
I am trying to understand an error when starting a KubeCluster
from a windows machine. The following should reproduce the error (on Windows):
conda create -n dask_temp_env dask-kubernetes -c conda-forge
conda activate dask_temp_env
python
and then
from dask_kubernetes.operator import KubeCluster
cluster = KubeCluster(name='foo', namespace='bar') # RuntimeError
The first line in the traceback is
ERROR:root:exec: _WindowsSelectorEventLoop does NOT support subprocesses, see README.md
followed by a block concluding in an kubernetes_asyncio.client.exceptions.ApiException
:
HTTP response body: {“kind”:“Status”,“apiVersion”:“v1”,“metadata”:{},“status”:“Failure”,“message”:“daskclusters.kubernetes.dask.org is forbidden: User "system:anonymous" cannot create resource "daskclusters" in API group "kubernetes.dask.org" in the namespace "[MY_NAMESPACE]"”,“reason”:“Forbidden”,“details”:{“group”:“kubernetes.dask.org”,“kind”:“daskclusters”},“code”:403}
So this (in particular the "User 'system:anonymous' ") indicates an issue with the authentication.
Looking at the kubernetes_asyncio
repo, there is a very clear warning regarding SelectorEventLoop
on Windows. Unfortunately the work-around indicated there does not appear to work for users importing dask-kubernetes
.
It looks like we have an older version (v2022.10.1) of the dask-kubernetes-operator deployed.
Is this a known bug/feature? Does anyone know if updating our deployment of the operator should be expected to fix this issue?
Thanks!
-Ellery