Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Auto-refresh MinIO credentials in notebooks (/vault) #195

Closed
brendangadd opened this issue Aug 13, 2020 · 3 comments
Closed

Auto-refresh MinIO credentials in notebooks (/vault) #195

brendangadd opened this issue Aug 13, 2020 · 3 comments
Assignees
Labels
area/engineering Requires attention from engineering: focus on foundational components or platform DevOps component/jupyter Kubeflow notebooks and associated container images component/kubeflow Kubeflow Related component/storage Persistence related (e.g. Minio, cloud, or user storage) kind/bug Something isn't working priority/blocker size/M 2-3 days

Comments

@brendangadd
Copy link
Contributor

brendangadd commented Aug 13, 2020

Ensure that notebook servers always have valid MinIO credentials from vault. This issue applies to credentials injected under /vault.

Epic: #194

@brendangadd brendangadd added kind/bug Something isn't working component/kubeflow Kubeflow Related component/storage Persistence related (e.g. Minio, cloud, or user storage) area/engineering Requires attention from engineering: focus on foundational components or platform DevOps priority/blocker size/M 2-3 days component/jupyter Kubeflow notebooks and associated container images labels Aug 13, 2020
@zachomedia
Copy link

The issue with running a command on /vault is that while there is an annotation to run a command when the credentials are updated, it runs within the Vault sidecar and not on the user pod. I'm not sure what the fix is for this.

@blairdrummond
Copy link
Contributor

blairdrummond commented Aug 25, 2020

This kinda seems like a feature Vault should make... But in the meantime, I guess it's a hack, but what if we just used something like

https://linux.die.net/man/5/incrontab

Edit: If we were feeling crazy, I wonder if you could even mount the incrontab file as a volume from a sidecar

@brendangadd brendangadd changed the title Auto-refresh MinIO credentials in notebooks Auto-refresh MinIO credentials in notebooks (/vault) Aug 28, 2020
@brendangadd
Copy link
Contributor Author

I didn't realize, but the vault sidecar is successfully updating the credentials, including updating the associated files in the notebook server (thanks for providing these details @zachomedia). So CLI users just need to re-source the file, and people writing code should transparently use the updated creds.

There are edge cases here where token refresh can cause issues, but I think we're at a reasonable place in our current state.

If we do decide to tackle this further, then I think we would want to do so with documentation. Particularly now that we auto-mount MinIO storage into the file system.

/cc @blairdrummond

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/engineering Requires attention from engineering: focus on foundational components or platform DevOps component/jupyter Kubeflow notebooks and associated container images component/kubeflow Kubeflow Related component/storage Persistence related (e.g. Minio, cloud, or user storage) kind/bug Something isn't working priority/blocker size/M 2-3 days
Projects
None yet
Development

No branches or pull requests

3 participants