Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
48 changes: 48 additions & 0 deletions modules/virt-configuring-bootsource-garbage-collection.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
// Module included in the following assemblies:
//
// * virt/storage/virt-automatic-bootsource-updates.adoc

:_mod-docs-content-type: PROCEDURE
[id="virt-configuring-bootsource-garbage-collection_{context}"]
= Configuring boot source garbage collection and retention

[role="_abstract"]
You can configure garbage collection and image retention settings to limit the number of older operating system image versions preserved on the cluster.

When automatic boot source updates are enabled, the Containerized Data Importer (CDI) tracks and downloads the latest versions of operating system images. By default, the system retains older versions of these imported images as a safety mechanism, allowing you to roll back if a newly imported version introduces issues. However, in environments with limited storage capacity, such as single-node OpenShift (SNO) environments, lowering the retention count helps conserve disk space.
Comment thread
Vaishali-gif-rh marked this conversation as resolved.
Comment thread
Vaishali-gif-rh marked this conversation as resolved.

[NOTE]
====
Manually deleting older `PersistentVolumeClaim` or `DataVolume` objects associated with historic boot source imports does not impact cluster stability or future updates.
====

.Procedure

. Open the `HyperConverged` custom resource (CR) in your default editor:
+
[source,terminal]
----
$ oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
----

. Edit the `spec.dataImportCronTemplates` field to add or adjust the `garbageCollect` and `importsToKeep` parameters:
+
[source,yaml]
----
apiVersion: hco.kubevirt.io/v1beta1
kind: HyperConverged
metadata:
name: kubevirt-hyperconverged
spec:
dataImportCronTemplates:
- metadata:
name: rhel9-image-cron
spec:
garbageCollect: Outdated <1>
importsToKeep: 1 <2>
schedule: "0 */12 * * *"
managedDataSource: rhel9
----
. Specifies the garbage collection policy. Valid values are `Outdated` to automatically delete older resource versions after a successful import, or `Never` to retain all previous versions.
. Specifies the number of older image versions to retain. The default value is `3`.
. Save and exit the editor to apply the changes.
2 changes: 2 additions & 0 deletions virt/storage/virt-automatic-bootsource-updates.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,8 @@ include::modules/virt-enabling-volume-snapshot-boot-source.adoc[leveloffset=+1]

include::modules/virt-disable-auto-updates-single-boot-source.adoc[leveloffset=+1]

include::modules/virt-configuring-bootsource-garbage-collection.adoc[leveloffset=+1]

include::modules/virt-verify-status-bootsource-update.adoc[leveloffset=+1]

[role="_additional-resources"]
Expand Down