-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
Async PV for workspace: PoC with data sync pod #16042
Comments
@ibuziuk could you please elaborate a bit about:
|
Great questions I have the same, but I think it should be addressed to @benoitf. Second that I want to ask is what we actually want to improve. On initial description look like we talk only about project source sync, so in this case we will speed up only second start of workspace but not build process, is it correct? |
For the POC, I would say it would be a success if it works. About performance it may be poor on recovery at first with ideas to improve it (like using zip/ another approach like git where you transfer binary but still unpack files at the end), parallel mode, etc). It's still better than pure ephemeral and it can be opted-in per workspace so it will not directly impact all workspaces.
Yes, che.openshift.io is a good target (or any gluster cluster). And other clusters where PV is long time to start.
Major failure for now with gluster is for nodejs projects. (it doesn't work at all)
about metrics, for a fresh workspace
for an existing workspace:
So it's still interesting to have numbers like
|
Try to rephrase my question. We talk only about syncing |
yes it's about /projects folder but npm dependencies are stored in |
@benoitf what are we going to do with maven/gradle based projects? |
@skabashnyuk I mean it's like today, it's already storing |
I'm talking about So we talking about all volumes or only about the one with |
@skabashnyuk ok got it 👍 I think POC should check first one volume ( Even if you loose |
@vparfonov I think you can go without dashboard (pure maven project) or with only dashboard (npm project) (as dashboard will live in its own repository soon) |
So DoD for POC will be: Same speed as we have now in |
Current state demonstrated here: https://youtu.be/8N1uxU-iYlY.
After that we can close PoC issue. |
Is not a goal of this POC also to make sure it is working with persistent storage like Gluster or whatever we want to use in prod? |
UPD: Successfully backup source on workspace stop and restore on start, with container lifecycle event. |
Time for backup/restore with real projects on Container file systemPrerequisite
Cases:
Repeat start/stop workspace 10 times and track time for backup/restore procedure calculate average:
2.1 Clone 4 projects:
2.2 Execute
Repeat start/stop workspace 10 times and track time for backup/restore procedure calculate average:
|
Repeat the same for workspace with 4 JavaScript projects on EBS storage (gp2):
|
Repeat the same for workspace with Eclipse Che (after built) on EBS storage (gp2):
|
Demo video here: https://youtu.be/MrUnsB_D0Rw |
Is your task related to a problem? Please describe.
It was decided to create a PoC for Hosted Che before start working on the epic - #15384
Describe the solution you'd like
rsync client
should be a plugin enabled on the devfile levelrsync server
pod should be running inside the {$username}Describe alternatives you've considered
N/A
Additional context
TODO
The text was updated successfully, but these errors were encountered: