-
Epic
-
Resolution: Done
-
Normal
-
None
-
None
-
Improve CRI-O Wipe Image Removal On Upgrade
-
Strategic Product Work
-
False
-
None
-
False
-
Not Selected
-
To Do
-
OCPSTRAT-1291 - Phase -1 : Improve CRIO wipe for reboot
-
OCPSTRAT-1291Phase -1 : Improve CRIO wipe for reboot
-
14% To Do, 7% In Progress, 79% Done
-
L
Epic Goal
- Image removal on upgrade was moved from crio wipe into crio itself, with the InternalWipe flag. It is configurable by setting `version_file_persist = “”` in the crio configuration.
- This interferes with a number of optimizations possible: for instance, predownloading the new release images before an upgrade.
- The goal of this epic is to update Kubelet garbage collection to allow for a time-based removal, where kubelet cleans up images that haven’t been used after a period of time, which would allow old release images to be cleaned up.
- While the existing kubelet garbage collection would take care of this, it waits until there is disk pressure, which would mean the images could potentially be needlessly kept for a long time.
- To get upstream consensus, it's possible there will need to be a plugin based system for Kubelet GC
Why is this important?
- Image removal on upgrade can be considered a heavy hammer against a relatively simple problem: the old release images should eventually get cleaned up. Something even as simple as an LRU cache would improve the situation.
Scenarios
- As an openshift admin, I would like to pre-cache my next upgrade to allow for a quicker update.
Acceptance Criteria
- CI - MUST be running successfully with tests automated
- Release Technical Enablement - Provide necessary release enablement details and documents.
- ...
Dependencies (internal and external)
- ...
Previous Work (Optional):
- …
Open questions::
- …
Done Checklist
- CI - CI is running, tests are automated and merged.
- Release Enablement <link to Feature Enablement Presentation>
- DEV - Upstream code and tests merged: <link to meaningful PR or GitHub Issue>
- DEV - Upstream documentation merged: <link to meaningful PR or GitHub Issue>
- DEV - Downstream build attached to advisory: <link to errata>
- QE - Test plans in Polarion: <link or reference to Polarion>
- QE - Automated tests merged: <link or reference to automated tests>
- DOC - Downstream documentation merged: <link to meaningful PR>
- links to
(1 links to)