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 DV garbage collection doc #2408

Merged
merged 3 commits into from
Aug 25, 2022
Merged

Conversation

arnongilboa
Copy link
Collaborator

@arnongilboa arnongilboa commented Aug 25, 2022

Signed-off-by: Arnon Gilboa agilboa@redhat.com

What this PR does / why we need it:

Which issue(s) this PR fixes:
Fixes #2311

Special notes for your reviewer:

Release note:

NONE

Signed-off-by: Arnon Gilboa <agilboa@redhat.com>
@kubevirt-bot kubevirt-bot added release-note-none Denotes a PR that doesn't merit a release note. dco-signoff: yes Indicates the PR's author has DCO signed all their commits. labels Aug 25, 2022
@kubevirt-bot kubevirt-bot requested review from awels and maya-r August 25, 2022 08:14
Copy link
Contributor

@ShellyKa13 ShellyKa13 left a comment

Choose a reason for hiding this comment

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

/lgtm

@kubevirt-bot kubevirt-bot added the lgtm Indicates that a PR is ready to be merged. label Aug 25, 2022
Copy link
Collaborator

@akalenyu akalenyu left a comment

Choose a reason for hiding this comment

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

Looks great

doc/datavolumes.md Outdated Show resolved Hide resolved
@@ -16,8 +16,8 @@ CDI configuration in specified by administrators in the `spec.config` of the `CD
| preallocation | nil | Preallocation setting to use unless a per-dataVolume value is set |
| importProxy | nil | The proxy configuration to be used by the importer pod when accessing a http data source. When the ImportProxy is empty, the Cluster Wide-Proxy (Openshift) configurations are used. ImportProxy has four parameters: `ImportProxy.HTTPProxy` that defines the proxy http url, the `ImportProxy.HTTPSProxy` that determines the roxy https url, and the `ImportProxy.NoProxy` which enforce that a list of hostnames and/or CIDRs will be not proxied, and finally, the `ImportProxy.TrustedCAProxy`, the ConfigMap name of an user-provided trusted certificate authority (CA) bundle to be added to the importer pod CA bundle. |
| insecureRegistries | nil | List of TLS disabled registries. |


| dataVolumeTTLSeconds | nil | Time after DataVolume completion it can be garbage collected. |
Copy link
Collaborator

Choose a reason for hiding this comment

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

Maybe Time in seconds following DataVolume completion after which it can be garbage-collected but not insisting

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I prefer the shorter version. in seconds already appears in the field name :)

@kubevirt-bot kubevirt-bot added dco-signoff: no Indicates the PR's author has not DCO signed all their commits. and removed lgtm Indicates that a PR is ready to be merged. dco-signoff: yes Indicates the PR's author has DCO signed all their commits. labels Aug 25, 2022
@akalenyu
Copy link
Collaborator

I think you can close this issue with this PR:
#2311

@kubevirt-bot kubevirt-bot added dco-signoff: yes Indicates the PR's author has DCO signed all their commits. and removed dco-signoff: no Indicates the PR's author has not DCO signed all their commits. labels Aug 25, 2022
Co-authored-by: akalenyu <51477153+akalenyu@users.noreply.github.com>
Signed-off-by: Arnon Gilboa <agilboa@redhat.com>
@akalenyu
Copy link
Collaborator

/lgtm

@kubevirt-bot kubevirt-bot added the lgtm Indicates that a PR is ready to be merged. label Aug 25, 2022
@akalenyu
Copy link
Collaborator

/test pull-containerized-data-importer-e2e-hpp-latest

#1988

@arnongilboa
Copy link
Collaborator Author

/retest-required

Copy link
Member

@awels awels left a comment

Choose a reason for hiding this comment

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

looks good one comment


Why is this an improvement over simply looking at the state annotation created and managed by CDI? Data Volumes provide a versioned API that other projects like [Kubevirt](https://github.com/kubevirt/kubevirt) can integrate with. This way those projects can rely on an API staying the same for a particular version and have guarantees about what that API will look like. Any changes to the API will result in a new version of the API.

### Garbage collection of successfully completed DataVolumes
Once the PVC population process is completed, its corresponding DV can be either garbage collected or remain. GC can be dynamically configured in [CDIConfig](cdi-config.md), so we recommend users not to assume the DV exists after completion. When the desired PVC exists, but its DV does not exist, it means that the PVC was successfully populated and the DV was garbage collected. To prevent a DV from being garbage collected, it should be annotated with:
Copy link
Member

Choose a reason for hiding this comment

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

I am kind of missing the motivation of why we would want the DVs garbage collected. Its great that it happens, but why? I would mention something that once the PVC is fully populated the DV no longer server a purpose, and it sometimes confuses people thinking they should modify the DV to have the matching PVC react. In particular resizing PVCs seems to confuse people because they see the DV.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

added

Signed-off-by: Arnon Gilboa <agilboa@redhat.com>
@kubevirt-bot kubevirt-bot added size/M and removed lgtm Indicates that a PR is ready to be merged. size/S labels Aug 25, 2022
@awels
Copy link
Member

awels commented Aug 25, 2022

/lgtm
/approve

@kubevirt-bot kubevirt-bot added the lgtm Indicates that a PR is ready to be merged. label Aug 25, 2022
@kubevirt-bot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: awels

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@kubevirt-bot kubevirt-bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Aug 25, 2022
@kubevirt-bot kubevirt-bot merged commit 62704a6 into kubevirt:main Aug 25, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. dco-signoff: yes Indicates the PR's author has DCO signed all their commits. lgtm Indicates that a PR is ready to be merged. release-note-none Denotes a PR that doesn't merit a release note. size/M
Projects
None yet
Development

Successfully merging this pull request may close these issues.

DataVolume garbage collection has no documentation in repo
5 participants