USGS-CMG / data-life-cycle-cloud-docker-jupyterhub

data-life-cycle-cloud-docker-jupyterhub
https://jupyterhub.wma.usgs.chs.ead/
2 stars 1 forks source link

Swarm worker nodes do note share user volumes #11

Open isuftin opened 7 years ago

isuftin commented 7 years ago

User volumes which notebook containers use for persistence get created on a worker node when a worker logs in. That volume persists on the worker node when a user logs out. When a user logs back in, Jupyterhub may end up deploying the notebook to another worker node. If that happens, a new user volume will be created and the user will not have access to the original notebook they were working on unless Jupyterhub does spawn the new notebook container on the original worker node. Docker volumes are not shared across nodes in a swarm.

This is not an issue when there's only one worker node, but when there's more this becomes an issue.

One answer for this is to mount volumes on an NFS mount shared between all worker nodes. I don't think Docker will be updating Docker Engine to have Docker volumes shared in the swarm.