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

Add basic experimental cache support #58

Merged
merged 9 commits into from
Sep 6, 2023

Conversation

judemars
Copy link
Contributor

@judemars judemars commented Sep 2, 2023

This CL adds simple support for utilizing the GCSFuse experimental cache. To do this, it detects whether the user has passed in experimental-local-file-cache to their mount options, and if so, adds an emptydir volume mount pointing to ephemeral local ssds (that have to have been previously set up by the user) and points the cache at them.

@songjiaxun please let me know if there's a suitable readme for me to add structions on how to add a cluster/node pool w/ local ssds.

@judemars
Copy link
Contributor Author

judemars commented Sep 2, 2023

/assign @songjiaxun

@judemars
Copy link
Contributor Author

judemars commented Sep 5, 2023

/assign dannawang0221

@songjiaxun songjiaxun self-assigned this Sep 5, 2023
pkg/webhook/sidecar_spec.go Outdated Show resolved Hide resolved
pkg/webhook/sidecar_spec.go Outdated Show resolved Hide resolved
pkg/webhook/mutatingwebhook.go Outdated Show resolved Hide resolved
pkg/webhook/mutatingwebhook.go Outdated Show resolved Hide resolved
cmd/sidecar_mounter/main.go Outdated Show resolved Hide resolved
cmd/sidecar_mounter/main.go Outdated Show resolved Hide resolved
@@ -186,3 +186,32 @@ kubectl port-forward jupyter-notebook-server 8888:8888
# clean up
kubectl delete -f ./examples/jupyter/jupyter-notebook-server.yaml
```

## Jupyter Notebook Example (no experimental read cache)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you mean "(with experimental read cache)"?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed! Thanks

# 2. install a Jupyter Notebook server using experimental gcsfuse read cache
kubectl apply -f ./examples/jupyter/jupyter-experimental-readcache.yaml

# get service IPs
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you also add the sequence number for this and the following steps? Or just remove the numbers 1, 2 from the above steps?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Woops, yup, fixed! Thanks


## Jupyter Notebook Example (no experimental read cache)

#### Prerequisite
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The example uses GPU, so you will also need to enable GPU on the node pool if you are using a standard cluster.

You can refer to https://github.com/GoogleCloudPlatform/gcs-fuse-csi-driver/tree/main/examples#prerequisites here.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good idea! Added

@songjiaxun songjiaxun merged commit 0d985b6 into GoogleCloudPlatform:main Sep 6, 2023
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants