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

fix(vm): use generic model with explicit features for Discovery cpu type #580

Merged

Conversation

diafour
Copy link
Member

@diafour diafour commented Dec 16, 2024

Description

  • Use kvm64 CPU model for 'Discovery' and 'Features' types.
  • Add patch to prevent scheduling problems for kvm64 model.

Why do we need it, and what problem does it solve?

Discovery implemented using CPU model "host-model" with a set of features not works as expected for different nodes: libvirt resolves host-model to the specific CPU model on the node where VM launches first and use this model on target node when migrating. This "resolving" prevents migration from the node with the recent CPU model to the node with the previous CPU model.

What is the expected result?

  • Virtual machine using "Discover" VMClass should migrate to the node with the previous CPU model, e.g. from CoffeeLake (8th gen) to Skylake (6th gen).

Use nodeSelector on VM to test it.

Checklist

  • The code is covered by unit tests.
  • e2e tests passed.
  • Documentation updated according to the changes.
  • Changes were tested in the Kubernetes cluster manually.

@diafour diafour force-pushed the fix/vm/libvirt-common-model-for-migration-between-mixed-servers branch 2 times, most recently from 9408e0c to 2f36d28 Compare December 23, 2024 12:22
@diafour diafour force-pushed the fix/vm/libvirt-common-model-for-migration-between-mixed-servers branch from 2794611 to 940453d Compare December 25, 2024 15:19
@diafour diafour force-pushed the fix/vm/libvirt-common-model-for-migration-between-mixed-servers branch 2 times, most recently from 9e8c108 to 53229a3 Compare January 13, 2025 08:54
@diafour diafour added the validation/skip/doc_changes Skip doc changes validation label Jan 13, 2025
@diafour diafour marked this pull request as ready for review January 13, 2025 14:13
@Isteb4k Isteb4k self-requested a review January 14, 2025 09:52
Isteb4k
Isteb4k previously approved these changes Jan 14, 2025
@diafour diafour changed the title fix(vm): Use generic model with explicit features for Discovery cpu type fix(vm): use generic model with explicit features for Discovery cpu type Jan 14, 2025
@diafour diafour force-pushed the fix/vm/libvirt-common-model-for-migration-between-mixed-servers branch from 53229a3 to 2b6f14d Compare January 14, 2025 10:31
- Use kvm64 model for Discovery and Features types.
- Patch kubevirt to prevent node selector on VM Pos for kvm64 model.
- Add internal documentation describing problems with Discovery type.

Signed-off-by: Ivan Mikheykin <[email protected]>
@diafour diafour force-pushed the fix/vm/libvirt-common-model-for-migration-between-mixed-servers branch from 2b6f14d to 8f9b0ae Compare January 14, 2025 15:29
@diafour diafour merged commit b2894a2 into main Jan 14, 2025
12 checks passed
@diafour diafour deleted the fix/vm/libvirt-common-model-for-migration-between-mixed-servers branch January 14, 2025 19:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
validation/skip/doc_changes Skip doc changes validation
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants