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

support online non-blocking garbage collection (no need to be placed in read-only mode) #10167

Closed
xaleeks opened this issue Dec 6, 2019 · 4 comments
Assignees
Labels
area/gc backlog doc-impact Engineering issues that will require a change in user docs kind/requirement New feature or idea on top of harbor

Comments

@xaleeks
Copy link
Contributor

xaleeks commented Dec 6, 2019

We want to deliver this in 1.11, some key requirements include

  • GC runs standard mark and sweep procedure and ensures nothing in use will be deleted
  • GC will remove blobs(layers and manifests) from registry that are no longer referenced by an image manifest
  • GC will remove untagged/dangling manifests(ie previous redis:latest sha image xxx is now replaced by image sha yyy after pushing new redis:latest, so xxx is now untagged and should get picked up by GC) - will this be part of our GC?
  • can preview or ‘dry run’ GC to see how much disk space would be freed up and estimation of running time
  • can run GC without setting Harbor in read-only mode, this means that user can still push / pull / delete images to that harbor instance. There is no effect to end user in terms of performing operations on Harbor and no chance of any kind of image corruption
  • drastically improve the performance of GC in terms of running time
  • allow manual execution as well as scheduled tasking
  • allow disabling GC so it never runs
  • support setting a time limit on the GC job so it never exceeds xx minutes
  • provide way for harbor admin to check if GC job is running (doesn't have to be in web console)
  • keeps logs of GC jobs, with each showing #blobs deleted along with their digests
@xaleeks
Copy link
Contributor Author

xaleeks commented Dec 10, 2019

@xaleeks
Copy link
Contributor Author

xaleeks commented Apr 8, 2020

link to spec:
goharbor/community#133

@xaleeks
Copy link
Contributor Author

xaleeks commented Apr 9, 2020

link to epic tracking workstream #11534

@xaleeks xaleeks changed the title support online garbage collection (no need to be placed in read-only mode) support online non-blocking garbage collection (no need to be placed in read-only mode) May 29, 2020
@xaleeks xaleeks added doc-impact Engineering issues that will require a change in user docs and removed need-document labels Jun 3, 2020
@wy65701436
Copy link
Contributor

close it as non-blocking GC is introduced in v2.1.0.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/gc backlog doc-impact Engineering issues that will require a change in user docs kind/requirement New feature or idea on top of harbor
Projects
None yet
Development

No branches or pull requests

3 participants