-
Notifications
You must be signed in to change notification settings - Fork 49
K8S kubevirt 'allocatable: devices.kubevirt.io/vhost-net: "0"' with Flatcar 3850.0.0+ #1336
Description
Description
If K8S + kubevirt is installed on Flatcar 3850.0.0+, the allocatable vhost-net devices are 0.
Impact
This issue impacts creating k8s kubevirt vms (no vms can be created if there are no allocatable vhost-net devices).
Environment and steps to reproduce
My environment was a k8s created on baremetal ARM64 using Flatcar 3850.0.0 stock image and automation from https://github.com/cloudbase/BMK/tree/flatcar_sysext.
Expected behavior
$: kubect get node -A -o yaml | grep -i vhost-net
allocatable: devices.kubevirt.io/vhost-net: 1kAdditional information
If the node is rebooted, the vhost-net allocatable devices are back to the expected size.
Sometimes, the issue cannot be reproduced, which means it is a race condition.
The issue is not present on the current stable or beta releases.
When trying to debug this issue, saw that the kubevirt implementation tries to open the /dev/vhost-net device file in order for the vhost-net kernel module to be autoloaded. I have created a small golang test script and I can confirm that opening the device file does not autoload the kernel module. More debug is needed to see if the 6.6 Linux kernel has module autoload disabled?