Linstor: fix live migrate on non-hyperconverged setups
Description
In non-hyperconverged setups, diskless nodes don't have a connection to each other, so setting properties there had no effect. Now it is checked if a connection exists, between the live migration nodes and if not, it will set the allow-two-primaries on resource-definition level.
Types of changes
- [ ] Breaking change (fix or feature that would cause existing functionality to change)
- [ ] New feature (non-breaking change which adds functionality)
- [x] Bug fix (non-breaking change which fixes an issue)
- [ ] Enhancement (improves an existing feature and functionality)
- [ ] Cleanup (Code refactoring and cleanup, that may add test cases)
- [ ] build/CI
- [ ] test (unit or integration test code)
Feature/Enhancement Scale or Bug Severity
Feature/Enhancement Scale
- [ ] Major
- [ ] Minor
Bug Severity
- [ ] BLOCKER
- [x] Critical
- [ ] Major
- [ ] Minor
- [ ] Trivial
Screenshots (if appropriate):
How Has This Been Tested?
Linstor cluster with storage nodes (non hyperconverged) and a hyperconverged Linstor cluster.
How did you try to break this feature and the system with this change?
Codecov Report
Attention: Patch coverage is 0% with 45 lines in your changes missing coverage. Please review.
Project coverage is 12.27%. Comparing base (
1af4158) to head (8c1a6b3). Report is 1 commits behind head on 4.18.
| Files with missing lines | Patch % | Lines |
|---|---|---|
| .../hypervisor/kvm/storage/LinstorStorageAdaptor.java | 0.00% | 36 Missing :warning: |
| ...cloudstack/storage/datastore/util/LinstorUtil.java | 0.00% | 9 Missing :warning: |
Additional details and impacted files
@@ Coverage Diff @@
## 4.18 #9832 +/- ##
============================================
- Coverage 12.27% 12.27% -0.01%
+ Complexity 9335 9334 -1
============================================
Files 4699 4699
Lines 414691 414724 +33
Branches 53409 51688 -1721
============================================
- Hits 50891 50888 -3
- Misses 357475 357512 +37
+ Partials 6325 6324 -1
| Flag | Coverage Δ | |
|---|---|---|
| unittests | 12.27% <0.00%> (-0.01%) |
:arrow_down: |
Flags with carried forward coverage won't be shown. Click here to find out more.
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
@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.
sorry have to rework it a bit, to be more fine grained in the non-hyperconverged case
Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ debian ✔️ suse15. SL-JID 11416
Ok reviewed/discussed this again, we lack the API's currently in Linstor to do this in a perfect way. So this is for now good enough and will also work for all current use cases.
@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 11479
@blueorangutan test
@DaanHoogland a [SL] Trillian-Jenkins test job (ol8 mgmt + kvm-ol8) has been kicked to run smoke tests
[SF] Trillian test result (tid-11729) Environment: kvm-ol8 (x2), Advanced Networking with Mgmt server ol8 Total time taken: 44188 seconds Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr9832-t11729-kvm-ol8.zip Smoke tests completed. 110 look OK, 1 have errors, 0 did not run Only failed and skipped tests results shown below:
| Test | Result | Time (s) | Test File |
|---|---|---|---|
| ContextSuite context=TestISOUsage>:setup | Error |
0.00 | test_usage.py |
@rp- this has been merged forward to main, but with conflicts. Can you please check if the merge was successful/done properly? thanks
@rp- this has been merged forward to main, but with conflicts. Can you please check if the merge was successful/done properly? thanks
LGTM