|
| 1 | +# DeprecatedMachineType |
| 2 | + |
| 3 | +## Meaning |
| 4 | +This alert fires when one or more Virtual Machines (VMs) |
| 5 | +are running with machine types that have been marked as deprecated (no longer supported). |
| 6 | + |
| 7 | +## Impact |
| 8 | +Running VMs on deprecated machine types can cause serious issues, including: |
| 9 | +Loss of certain features or degraded functionality. |
| 10 | +Reduced performance or unexpected behavior. |
| 11 | +Security vulnerabilities due to lack of ongoing support. |
| 12 | +Failure to restart VMs if the machine type is unsupported by the current or upgraded virt-launcher version. |
| 13 | +These issues can lead to service disruptions and affect workload availability during or after cluster upgrades. |
| 14 | + |
| 15 | +## Diagnosis |
| 16 | +This alert does **not** specify which exact machine types are deprecated on your VMs. Instead, it indicates that some VMs or VMIs are using machine types marked as deprecated by the cluster nodes. |
| 17 | +To identify which machine types are deprecated on your nodes, inspect the following file on each node: |
| 18 | +/var/lib/kubevirt-node-labeller/capabilities.xml |
| 19 | + |
| 20 | +This XML file contains the node's virtualization capabilities, including a list of guest machine types. Deprecated machine types are marked with the attribute `deprecated="yes"`. |
| 21 | +Example excerpt from the XML: |
| 22 | +```xml |
| 23 | +<machine maxCpus='710' deprecated='yes'>pc-q35-rhel8.6.0</machine> |
| 24 | +<machine maxCpus='4096'>pc-q35-rhel9.6.0</machine> |
| 25 | +``` |
| 26 | +In this example, pc-q35-rhel8.6.0 is deprecated, while pc-q35-rhel9.6.0 is supported. |
| 27 | + |
| 28 | +### Next steps for admins: |
| 29 | +- Compare the machine types used by your VMs with the deprecated types listed in this file. |
| 30 | +- Plan and perform migrations of VMs using deprecated machine types to supported ones before upgrading the cluster. |
| 31 | + |
| 32 | +## Mitigation |
| 33 | +Update affected VMs to use a supported machine type. You can: |
| 34 | +- Edit VM definitions individually by modifying the spec.template.spec.domain.machine.type field. |
| 35 | +- Or, for a smoother and cleaner update of multiple VMs, use the kubevirt-api-lifecycle-automation tool to transition all deprecated VMs in one operation. |
| 36 | +This approach ensures consistent, automated migration and reduces manual errors or downtime during cluster upgrades. |
| 37 | + |
| 38 | +<!--DS: If you cannot resolve the issue, log in to the |
| 39 | +link:https://access.redhat.com[Customer Portal] and open a support case, |
| 40 | +attaching the artifacts gathered during the diagnosis procedure.--> |
| 41 | +<!--USstart--> |
| 42 | +If you cannot resolve the issue, see the following resources: |
| 43 | + |
| 44 | +- [OKD Help](https://okd.io/docs/community/help/) |
| 45 | +- [#virtualization Slack channel](https://kubernetes.slack.com/channels/virtualization) |
| 46 | +<!--USend--> |
0 commit comments