-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
Linked clone migration between file-based storages on KVM #8911
base: 4.19
Are you sure you want to change the base?
Linked clone migration between file-based storages on KVM #8911
Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## 4.19 #8911 +/- ##
==========================================
Coverage 15.07% 15.07%
- Complexity 11168 11173 +5
==========================================
Files 5406 5406
Lines 472795 472807 +12
Branches 57834 58265 +431
==========================================
+ Hits 71282 71299 +17
+ Misses 393585 393577 -8
- Partials 7928 7931 +3
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
|
@blueorangutan package |
|
@sureshanaparti a [SL] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress. |
|
Packaging result [SF]: ✖️ el7 ✖️ el8 ✖️ el9 ✖️ debian ✖️ suse15. SL-JID 9252 |
|
Packaging result [SF]: ✖️ el7 ✖️ el8 ✖️ el9 ✖️ debian ✖️ suse15. SL-JID 9256 |
|
@blueorangutan package |
|
@JoaoJandre a [SL] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress. |
|
Packaging result [SF]: ✔️ el7 ✔️ el8 ✔️ el9 ✔️ debian ✔️ suse15. SL-JID 9262 |
|
@sureshanaparti could we run de CI here? |
|
@blueorangutan test |
|
@DaanHoogland a [SL] Trillian-Jenkins test job (centos7 mgmt + kvm-centos7) has been kicked to run smoke tests |
|
[SF] Trillian Build Failed (tid-9870) |
|
[SF] Trillian Build Failed (tid-9873) |
|
[SF] Trillian test result (tid-9884)
|
|
This pull request has merge conflicts. Dear author, please fix the conflicts and sync your branch with the base branch. |
|
@blueorangutan package |
|
@DaanHoogland a [SL] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress. |
|
Packaging result [SF]: ✖️ el7 ✖️ el8 ✖️ el9 ✖️ debian ✖️ suse15. SL-JID 9536 |
|
@blueorangutan package |
|
@JoaoJandre a [SL] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress. |
|
Packaging result [SF]: ✔️ el7 ✖️ el8 ✖️ el9 ✔️ debian ✖️ suse15. SL-JID 9547 |
…lume-on-migration
|
@blueorangutan package |
|
@blueorangutan package |
|
@JoaoJandre a [SL] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress. |
|
Could someone take a look ? |
@JoaoJandre is it possible to cover it by smoke test ? |
|
Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ debian ✔️ suse15. SL-JID 10576 |
|
@weizhouapache I would have to access the storage and check if the volume was linked clone before, and if it stayed after, I'm not sure how to do this in a smoke test. I can cover it with unit tests, those are easy. Btw, could we run the CI here? |
|
@blueorangutan test alma9 kvm-alma9 |
|
@weizhouapache a [SL] Trillian-Jenkins test job (alma9 mgmt + kvm-alma9) has been kicked to run smoke tests |
|
[SF] Trillian test result (tid-11042)
|
|
cc @sureshanaparti @DaanHoogland @JoaoJandre @weizhouapache is this considered critical for the release? I think this may be useful for local storage users for example, but not sure what others are considering. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
clgtm
|
@JoaoJandre , I will see what I can do in terms of testing this. |
|
@blueorangutan package |
|
@DaanHoogland a [SL] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress. |
|
Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ debian ✔️ suse15. SL-JID 11026 |
|
@blueorangutan test |
|
@rohityadavcloud a [SL] Trillian-Jenkins test job (ol8 mgmt + kvm-ol8) has been kicked to run smoke tests |
|
[SF] Trillian test result (tid-11411)
|
no issues |
@rohityadavcloud I would like to have it merged into 4.20. But we are still missing a review/LGTM. It probably will not make it. |
Description
Currently, when a volume that was created with linked clone is live migrated from an NFS storage to another NFS storage in KVM, it continues to have the template as a backing file on the destination storage. In all other cases, such as NFS to SharedMountPoint, the volume is consolidated with its backing file during migration.
This special case adds unnecessary complexity to ACS; In most cases, performing the migration without consolidating the volume does not significantly optimize resource usage. On the other hand, when consolidating the volume with its backing file, the hypervisor detects empty sectors and removes them from the final volume, therefore, consolidating the volume can reduce storage usage.Instead of only maintaining linked clone only on NFS to NFS migration, we now maintain it when migrating between NFS, shared mount-point and local storage, as all of these are file based and have no reason to always consolidate the volumes.
In order to fix the situations explained in
#7615 and #8834, we consolidate the volume when its template is deleted.
Types of changes
Feature/Enhancement Scale or Bug Severity
Feature/Enhancement Scale
Bug Severity
Screenshots (if appropriate):
How Has This Been Tested?
I've tested creating a VM and migrating between NFS/SMP/Local storage, all migrations were successful, the template was copied to the storage and the VM was not corrupted.
I've also tested creating a VM, force deleting its template and then migrating it, the migration consolidated the volume, and the VM was not corrupted.