tag v1.4.0-rc.0
Tagger: Luboslav Pivarc lpivarc@redhat.com
This release follows v1.3.1 and consists of 1682 changes, contributed by 74 people, leading to 3839 files changed, 153579 insertions(+), 127983 deletions(-).
The source code and selected binaries are available for download at: https://github.com/kubevirt/kubevirt/releases/tag/v1.4.0-rc.0.
The primary release artifact of KubeVirt is the git tree. The release tag is
signed and can be verified using git tag -v v1.4.0-rc.0
.
Pre-built containers are published on Quay and can be viewed at: https://quay.io/kubevirt/.
Notable changes
- [PR #13071][machadovilaca] Add kubevirt_vm_resource_limits metric
- [PR #13090][acardace] Allow live updating VMs' tolerations
- [PR #12629][jean-edouard] backend-storage now supports RWO FS
- [PR #13086][lyarwood] A new
spec.configuration.instancetype.referencePolicy
configurable has been added to theKubeVirt
CR with support forreference
(default),expand
andexpandAll
policies provided. - [PR #12967][xpivarc] BochsDisplayForEFIGuests is GAed, use "kubevirt.io/vga-display-efi-x86" annotation on Kubevirt CR before upgrading in case you need retain compatibility.
- [PR #13078][qinqon] Add dynamic pod interface name feature gate
- [PR #13072][0xFelix] virtctl: virtctl create vm can now use the Access Credentials API to add credentials to a new VM
- [PR #13050][vamsikrishna-siddu] fix the cpu model issue for s390x.
- [PR #12802][machadovilaca] Add kubevirt_vmi_status_addresses metric
- [PR #13027][awels] BugFix: Stop creating tokenSecretRef when no volumes to export
- [PR #13001][awels] Relaxed check on modify VM spec during VM snapshot to only check disks/volumes
- [PR #13082][kubevirt-bot] Updated common-instancetypes bundles to v1.2.0
- [PR #12601][mhenriks] vmsnapshot: Enable status subresource for snapshot.kubevirt.io api group
- [PR #13018][orelmisan] Support Dynamic Primary Pod NIC Name
- [PR #13019][0xFelix] virtctl: The flags
--volume-clone-pvc
,--volume-datasource
and--volume-blank
are deprecated in favor of the--volume-import
flag. - [PR #13059][EdDev] Network hotplug feature is declared as GA.
- [PR #13024][EdDev] network binding plugin: Introduce a new
managedTap
domainAttachmentType
- [PR #13060][EdDev] Network binding plugins feature is declared as Beta.
- [PR #13045][dasionov] Add 'machine_type' label for kubevirt_vm_info metric
- [PR #13030][alicefr] Removed the ManualRecoveryRequired field from the VolumeMigrationState and convert it to the VM condition ManualRecoveryRequired
- [PR #13053][0xFelix] virtctl: Users can specify a sysprep volume in VMs created with virtctl create vm
- [PR #12855][0xFelix] virtctl expose: Drop flag to set deprecated LoadBalancerIP option
- [PR #13008][0xFelix] virtctl: Allow creating a basic cloud-init config with virtctl create vm
- [PR #12829][0xFelix] fix: Proxies configured in kubeconfig are used in client-go for asynchronous subresources like VNC or Console
- [PR #12733][alromeros] Bugfix: Fix disk expansion logic by checking usable size instead of requested capacity
- [PR #13052][fossedihelm] Update code-generators to 1.31.1
- [PR #12882][brianmcarey] Build KubeVirt with go v1.22.8
- [PR #13040][awels] BugFix: Allow VMExport to work with VM columes that have dots in its name
- [PR #12729][fossedihelm] Update k8s dependencies to 0.31.0
- [PR #12867][jschintag] Fixed additional broken amd64 image in some image manifests
- [PR #12940][Barakmor1] Deprecate the DockerSELinuxMCS FeatureGate
- [PR #12943][Barakmor1] The
GPU
feature gate is now deprecated with the feature state graduated toGA
and thus enabled by default - [PR #12992][machadovilaca] Add a 'outdated' label to kubevirt_vmi_info metric
- [PR #12933][ShellyKa13] VM admitter: improve validation of vm spec datavolumetemplate
- [PR #12986][lyarwood] The
PreferredEfi
preference is now only applied when a user has not already enabled eitherEFI
orBIOS
within the underlyingVirtualMachine
. - [PR #12117][Sreeja1725] Integrate kwok with sig-scale tests
- [PR #12716][Sreeja1725] Update kubevirt_rest_client_request_latency_seconds to count list calls if made using query params
- [PR #12578][dasionov] Mark Running field as deprecated
- [PR #12753][lyarwood] The
CommonInstancetypesDeploymentGate
feature gate and underlying feature are graduated to GA and now always enabled by default. A single newKubeVirt
configurable is also introduced to allow cluster admins a way of explicitly disabling deployment when required. - [PR #12645][avlitman] Add kubevirt_vmsnapshot_succeeded_timestamp_seconds metric
- [PR #11097][vamsikrishna-siddu] add s390x support for kubevirt builder
- [PR #12910][machadovilaca] Rename kubevirt_vm_resource_requests 'vmi' label to 'name'
- [PR #12848][iholder101] Reduce default CompletionTimeoutPerGiB from 800s to 150s
- [PR #12861][ShellyKa13] bugfix: fix possible miss update of datavolumename on vmrestore restores
- [PR #12441][machadovilaca] Increase periodicity in domainstats migration metrics
- [PR #12718][machadovilaca] Add kubevirt_vm_info metric
- [PR #12599][xpivarc] MaxCpuSockets won't block creation of VMs with more Sockets than MaxCpuSockets declare
- [PR #12857][akalenyu] BugFix: Fail to create VMExport via virtctl vmexport create
- [PR #12355][alicefr] Add the volume migration state in the VM status
- [PR #12726][awels] Concurrent addvolume/removevolume using virtctl no longer fail if concurrent modifications happen
- [PR #12835][ShellyKa13] bugfix: In case of err in vmrestore, leave VM without RestoreInProgress annotation allowing it to be started
- [PR #12809][dasionov] bug-fix: Ensure PDB associated with a VMI is deleted when it Reaches Succeeded or Failed phase
- [PR #12813][akalenyu] BugFix: can't create export pod on OpenShift
- [PR #12786][0xFelix] virtctl: Created VMs can infer an instancetype or preference from PVC, Registry and Snapshot sources now.
- [PR #12764][ShellyKa13] bugfix: vmrestore create DVs before creation/update of restored VM
- [PR #10562][dhiller] Continue changes to Ginkgo V2 Serial runs
- [PR #12516][vamsikrishna-siddu] enable initial e2e tests for s390x.
- [PR #12739][lyarwood] A new
PreferredEfi
field has been added to preferences to express the preferredEFI
configuration for a givenVirtualMachine
. - [PR #12737][machadovilaca] Add evictable label to kubevirt_vmi_info
- [PR #12232][lyarwood] The
NUMA
feature gate is now deprecated with the feature state graduated toGA
and thus enabled by default - [PR #12582][mhenriks] vmsnapshot: when checking if a VM is running, ignore runStrategy
- [PR #12625][machadovilaca] Add kubevirt_vm_resource_requests for CPU resource
- [PR #12605][mhenriks] vmexport: enable status subresource for VirtualMachineExport
- [PR #12616][orenc1] replace
Update()
withPatch()
fortest VirtualMachineInstancesPerNode
- [PR #12557][codingben] Optionally create data source using virtctl image upload.
- [PR #12547][mhenriks] virt-api: skip clone auth check when DataVolume already exists
- [PR #12613][orelmisan] Bridge binding: Static routes to subnets containing the pod's NIC IP address are passed to the VM.
- [PR #12594][tiraboschi] [tests] introduce a decorator for Periodic_only tests
- [PR #12593][machadovilaca] Add kubevirt_vm_resource_requests metric for memory resource
- [PR #12617][Acedus] grpc from go.mod is now correctly shipped in release images
- [PR #12638][akalenyu] BugFix: "Cannot allocate memory" warnings for containerdisk VMs
- [PR #12395][alicefr] Add new condition for VMIStorageLiveMigratable
- [PR #12419][nunnatsa] Add timeout to validation webhooks
- [PR #12592][awels] Fixed issue emitting created secret events when not actually creating secrets during VMExport setup
- [PR #12584][brianmcarey] Build KubeVirt with go v1.22.6
- [PR #12575][Barakmor1] Advise users to use RunStrategy in virt-api messages
- [PR #12466][orenc1] tests/vm_tests.go: replace Update() with Patch()
- [PR #12548][kubevirt-bot] Updated common-instancetypes bundles to v1.1.0
- [PR #12476][jschintag] Enable live-migration and node labels on s390x
- [PR #12194][mhenriks] VM supports kubevirt.io/immediate-data-volume-creation: "false" which delays creating DataVolumeTemplates until VM is started
- [PR #11802][matthewei] Adding newMacAddresses validatewebhook for VMCloneAPI
- [PR #11754][nickolaev] Adding support for the
igb
network interface model - [PR #12254][jkinred] * Reduced the severity of log messages when a
VolumeSnapshotClass
is not found. When snapshots are not enabled for a volume, the reason will still be displayed in thestatus.volumeSnapshotStatuses
field of aVirtualMachine
resource. - [PR #12460][mhenriks] virt-api: unencode authorization extra headers
- [PR #12451][fossedihelm] Fix: eviction requests to completed virt-launcher pods cannot trigger a live migration
- [PR #11881][lyarwood] The
expand-spec
subresource API now applies defaults to the returnedVirtualMachine
to ensure theVirtualMachineInstanceSpec
within is closer to the eventual version used when starting the originalVirtualMachine
. - [PR #12452][andreabolognani] This version of KubeVirt includes upgraded virtualization technology based on libvirt 10.5.0 and QEMU 9.0.0.
- [PR #12425][fudancoder] fix some comments
- [PR #12354][qinqon] Use optional interface at passt binding sidecar
- [PR #12268][fossedihelm] Drop
ForceRestart
andForceStop
methods from client-go - [PR #12235][orelmisan] Network binding plugins: Enable the ability to specify compute memory overhead
- [PR #12209][orenc1] Fix wrong KubeVirtVMIExcessiveMigrations alert calculation in an upgrade scenario.
- [PR #12261][fossedihelm] Fix: persistent tpm can be used with vmis containing dots in their name
- [PR #12247][Sreeja1725] Add perf-scale benchmarks for release v1.3
- [PR #12181][akalenyu] BugFix: Grant namespace admin RBAC to passthrough a client USB to a VMI
- [PR #12096][machadovilaca] Fix missing performance metrics for VMI resources
- [PR #11856][Sreeja1725] Add unit tests to check for API backward compatibility
- [PR #12116][Sreeja1725] Add CPU/Memory utilization of components metrics to kubevirt benchmarks
- [PR #12195][awels] Virt export route has an edge termination of redirect
- [PR #12212][acardace] enable only for VMs with memory >= 1Gi
- [PR #12053][vladikr] Only a single vgpu display option with ramfb will be configured per VMI.
- [PR #12193][acardace] fix RerunOnFailure stuck in Provisioning
- [PR #12186][kubevirt-bot] Updated common-instancetypes bundles to v1.0.1
- [PR #12180][0xFelix] VMs with a single socket and NetworkInterfaceMultiqueue enabled require a restart to hotplug additional CPU sockets.
- [PR #11927][lyarwood] All
preferredCPUTopology
constants prefixed withPrefer
have been deprecated and will be removed in a future version of theinstancetype.kubevirt.io
API. - [PR #12169][lyarwood]
PreferredDiskDedicatedIoThread
is now only applied tovirtio
disk devices - [PR #12125][ksimon1] chore: bump virtio-win image version to 0.1.248
- [PR #12128][acardace] Memory Hotplug fixes and stabilization
- [PR #11911][alromeros] Bugfix: Implement retry mechanism in export server and vmexport
- [PR #11982][RamLavi] Introduce validatingAdmissionPolicy to restrict node patches on virt-handler
- [PR #12119][acardace] Fix VMPools when
LiveUpdate
asvmRolloutStrategy
is used.
Contributors
74 people contributed to this release:
141 fossedihelm ffossemo@redhat.com
113 Luboslav Pivarc lpivarc@redhat.com
87 Felix Matouschek fmatouschek@redhat.com
76 Orel Misan omisan@redhat.com
62 Alice Frosi afrosi@redhat.com
48 Lee Yarwood lyarwood@redhat.com
43 Alvaro Romero alromero@redhat.com
39 bmordeha bmordeha@redhat.com
37 Alex Kalenyuk akalenyu@redhat.com
36 Nahshon Unna-Tsameret nunnatsa@redhat.com
35 Edward Haas edwardh@redhat.com
34 Antonio Cardace acardace@redhat.com
29 Michael Henriksen mhenriks@redhat.com
25 Ram Lavi ralavi@redhat.com
21 Shelly Kagan skagan@redhat.com
20 Brian Carey bcarey@redhat.com
19 Itamar Holder iholder@redhat.com
19 Jed Lejosne jed@redhat.com
16 Adi Aloni adialoni101@gmail.com
15 João Vilaça machadovilaca@gmail.com
15 dsionov dsionov@redhat.com
14 Dan Kenigsberg danken@redhat.com
13 Jan Schintag jan.schintag@de.ibm.com
13 Or Mergi ormergi@redhat.com
11 Alexander Wels awels@redhat.com
10 Vamsi Krishna Siddu vamsikrishna.siddu@ibm.com
7 Anish Bista anishbista053@gmail.com
7 Arnon Gilboa agilboa@redhat.com
7 Ben Oukhanov boukhanov@redhat.com
7 Daniel Hiller dhiller@redhat.com
7 Nir Dothan ndothan@redhat.com
7 Or Shoval oshoval@redhat.com
6 Andrea Bolognani abologna@redhat.com
6 Assaf Admi aadmi@redhat.com
6 Enrique Llorente ellorent@redhat.com
6 machadovilaca machadovilaca@gmail.com
6 svarnam svarnam@nvidia.com
5 Oren Cohen ocohen@redhat.com
5 Vladik Romanovsky vromanso@redhat.com
5 aliamerj aliamer19ali@gmail.com
4 Daniel Hiller daniel.hiller.1972@googlemail.com
4 Jonathan Kinred jkinred@linuxfoundation.org
4 avlitman alitman@redhat.com
3 Edu Gómez Escandell egomez@redhat.com
3 Simone Tiraboschi stirabos@redhat.com
3 rkishner rkishner@redhat.com
2 Andrej Krejcir akrejcir@redhat.com
2 Eng Zer Jun engzerjun@gmail.com
2 Vasiliy Ulyanov vulyanov@suse.de
2 anish bista anishbista053@gmail.com
2 dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2 shenwei shenwei@cmss.chinamobile.com
1 Adam Litke alitke@redhat.com
1 Andrew Burden aburden@redhat.com
1 Aviv Guiser avivguiser@gmail.com
1 Brian Carey brian.carey@protonmail.com
1 David Vossel dvossel@redhat.com
1 Igor Bezukh ibezukh@redhat.com
1 Jose R. Gonzalez komish@flutes.dev
1 Karel Simon ksimon@redhat.com
1 Mike Russell michael.russell@suse.com
1 Mikel Olasagasti Uranga mikel@olasagasti.info
1 Nikolay Nikolaev nikolay.nikolaev@isovalent.com
1 Ron Gershburg rgershbu@redhat.com
1 Ron Gershburg ron.gershburg.ext@nokia.com
1 Shridhar2104 155125695+Shridhar2104@users.noreply.github.com
1 VamsikrishnaSiddu vamsikrishna.siddu@ibm.com
1 Wei Zhang kweizh@gmail.com
1 Zhiwei Huang ai.william@outlook.com
1 fudancoder fudancoder@icloud.com
1 guoguangwu guoguangwug@gmail.com
1 muxuelan muxuelan_yewu@cmss.chinamobile.com
Additional Resources
- Mailing list: https://groups.google.com/forum/#!forum/kubevirt-dev
- Slack: https://kubernetes.slack.com/messages/virtualization
- An easy to use demo: https://github.com/kubevirt/demo
- How to contribute
- License
---
-----BEGIN PGP SIGNATURE-----
iHUEABEIAB0WIQS5aL5huPTZew1hSy9m6XN7mspnmQUCZyPyOgAKCRBm6XN7mspn
mdE3AQC/2c6Ex8BFb38h3UsCIWqaRO6t0eWnwD7Zkh+HNsgcsAD/Vlj8iTfobhLB
5IpXyNy1fixE60YxI3Smn05htINwldo=
=6LRM
-----END PGP SIGNATURE-----