v1.1.0
tag v1.1.0
Tagger: Antonio Cardace acardace@redhat.com
This release follows v1.0.1 and consists of 1071 changes, contributed by 78 people, leading to 1108 files changed, 82781 insertions(+), 33012 deletions(-).
v1.1.0 is a promotion of release candidate v1.1.0-rc.1 which was originally published 2023-11-03
The source code and selected binaries are available for download at: https://github.com/kubevirt/kubevirt/releases/tag/v1.1.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.1.0
.
Pre-built containers are published on Quay and can be viewed at: https://quay.io/kubevirt/.
Notable changes
API change
- [#10568][ormergi] Network binding plugin API support CNIs, new integration point on virt-launcher pod creation.
- [#10309][lyarwood] cluster-wide
common-instancetypes
resources can now deployed byvirt-operator
using theCommonInstancetypesDeploymentGate
feature gate - [#10463][0xFelix] VirtualMachines: Introduce InferFromVolumeFailurePolicy in Instancetype- and PreferenceMatchers
- [#10447][fossedihelm] Add a Feature Gate to KV CR to automatically set memory limits when a resource quota with memory limits is associated to the creation namespace
- [#10477][jean-edouard] Dynamic KSM enabling and configuration
- [#10110][tiraboschi] Stream guest serial console logs from a dedicated container
- [#10015][victortoso] Implements USB host passthrough in permittedHostDevices of KubeVirt CRD
- [#10184][acardace] Add memory hotplug feature
- [#10231][kvaps] Propogate public-keys to cloud-init NoCloud meta-data
- [#9673][germag] DownwardMetrics: Expose DownwardMetrics through virtio-serial channel.
- [#10086][vladikr] allow live updating VM affinity and node selector
- [#10272][ormergi] Introduce network binding plugin for Slirp networking, interfacing with Kubevirt new network binding plugin API.
- [#10284][AlonaKaplan] Introduce an API for network binding plugins. The feature is behind "NetworkBindingPlugins" gate.
- [#9878][jean-edouard] The EFI NVRAM can now be configured to persist across reboots
- [#9932][lyarwood]
ControllerRevisions
containinginstancetype.kubevirt.io
CRDs
are now decorated with labels detailing specific metadata of the underlying stashed object - [#10058][alicefr] Add field errorPolicy for disks
- [#10004][AlonaKaplan] Hoyplug/unplug interfaces should be done by updating the VM spec template. virtctl and REST API endpoints were removed.
- [#9896][ormergi] The VM controller now replicates spec interfaces MAC addresses to the corresponding interfaces in the VMI spec.
- [#7708][VirrageS]
nodeSelector
andschedulerName
fields have been added to VirtualMachineInstancetype spec. - [#7197][vasiliy-ul] Experimantal support of SEV attestation via the new API endpoints
- [#9737][AlonaKaplan] On hotunplug - remove bridge, tap and dummy interface from virt-launcher and the caches (file and volatile) from the node.
Bug fixes:
- [#10515][iholder101] Bug-fix: Stop copying VMI spec to VM during snapshots
- [#10393][iholder101] [Bugfix] [Clone API] Double-cloning is now working as expected.
- [#10391][awels] BugFix: VMExport now works in a namespace with quotas defined.
- [#10380][alromeros] Bugfix: Allow image-upload to recover from PendingPopulation phase
- [#10099][iholder101] Bugfix: target virt-launcher pod hangs when migration is cancelled.
- [#10165][awels] BugFix: deleting hotplug attachment pod will no longer detach volumes that were not removed.
- [#10067][iholder101] Bug fix:
virtctl create clone
marshalling and replacement ofkubectl
withkubectl virt
- [#9935][xpivarc] Bug fix - correct logging in container disk
- [#9872][alromeros] Bugfix: Allow lun disks to be mapped to DataVolume sources
- [#10039][simonyangcj] fix guaranteed qos of virt-launcher pod broken when use virtiofs
- [#9861][rmohr] Fix the possibility of data corruption when requesting a force-restart via "virtctl restart"
Deprecation
- [#10486][assafad] Deprecation notice for the metrics listed in the PR. Please update your systems to use the new metrics names.
- [#9821][sradco] Deprecation notice for the metrics listed in the PR. Please update your systems to use the new metrics names.
- [#10101][acardace] Deprecate
spec.config.machineType
in KubeVirt CR.
SIG-compute
- [#10566][fossedihelm] Add 100Mi of memory overhead for vmi with dedicatedCPU or that wants GuaranteedQos
- [#10496][fossedihelm] Automatically set cpu limits when a resource quota with cpu limits is associated to the creation namespace and the
AutoResourceLimits
FeatureGate is enabled - [#10543][0xFelix] Clear VM guest memory when ignoring inference failures
- [#10320][victortoso] sidecar-shim implements PreCloudInitIso hook
- [#10253][rmohr] Stop trying to create unused directory /var/run/kubevirt-ephemeral-disk in virt-controller
- [#10050][victortoso] Updating the virt stack: QEMU 8.0.0, libvirt to 9.5.0, edk2 20230524, passt 20230818, libguestfs and guestfs-tools 1.50.1, virtiofsd 1.7.2
- [#9231][victortoso] Introduces sidecar-shim container image
- [#10254][rmohr] Don't mark the KubeVirt "Available" condition as false on up-to-date and ready but misscheduled virt-handler pods.
- [#10182][iholder101] Stop considering nodes without
kubevirt.io/schedulable
label when finding lowest TSC frequency on the cluster - [#10056][jean-edouard] UEFI guests now use Bochs display instead of VGA emulation
- [#10106][acardace] Add boot-menu wait time when starting the VM as paused.
SIG-storage
- [#10532][alromeros] Add --volume-mode flag in image-upload
- [#10020][akalenyu] Use auth API for DataVolumes, stop importing kubevirt.io/containerized-data-importer
- [#10400][alromeros] Add new vmexport flags to download raw images, either directly (--raw) or by decompressing (--decompress) them
- [#10148][alromeros] Add port-forward functionalities to vmexport
- [#10275][awels] Ensure new hotplug attachment pod is ready before deleting old attachment pod
- [#10118][akalenyu] Change exportserver default UID to succeed exporting CDI standalone PVCs (not attached to VM)
- [#9918][ShellyKa13] Fix for hotplug with WFFC SCI storage class which uses CDI populators
SIG-network
- [#10366][ormergi] Kubevirt now delegates Slirp networking configuration to Slirp network binding plugin. In case you haven't registered Slirp network binding plugin image yet (i.e.: specify in Kubevirt config) the following default image would be used:
quay.io/kubevirt/network-slirp-binding:20230830_638c60fc8
. On next release (v1.2.0) no default image will be set and registering an image would be mandatory. - [#10185][AlonaKaplan] Add support to migration based SRIOV hotplug.
- [#10116][ormergi] Existing detached interfaces with 'absent' state will be cleared from VMI spec.
- [#9958][AlonaKaplan] Disable network interface hotplug/unplug for VMIs. It will be supported for VMs only.
- [#10489][maiqueb] Remove the network-attachment-definition
list
andwatch
verbs from virt-controller's RBAC
SIG-infra
- [#10438][lyarwood] A new
instancetype.kubevirt.io:view
ClusterRole
has been introduced that can be bound to users via aClusterRoleBinding
to provide read only access to the cluster scopedVirtualMachineCluster{Instancetype,Preference}
resources.
SIG-scale
- [#9989][alaypatel07] Add perf scale benchmarks for VMIs
Uncategorized
- [#9590][xuzhenglun] fix embed version info of virt-operator
- [#10044][machadovilaca] Add operator-observability package
- [#10450][0xFelix] virtctl: Enable inference in create vm subcommand by default
- [#10386][liuzhen21] KubeSphere added to the adopter's file!
- [#10167][0xFelix] virtctl: Apply namespace to created manifests
- [#10173][rmohr] Move coordination/lease RBAC permissions to Roles
- [#10138][machadovilaca] Change
kubevirt_vmi_*_usage_seconds
from Gauge to Counter - [#10107][PiotrProkop] Expose
kubevirt_vmi_vcpu_delay_seconds_total
reporting amount of seconds VM spent in waiting in the queue instead of running. - [#10070][machadovilaca] Remove affinities label from
kubevirt_vmi_cpu_affinity
and use sum as value - [#9982][fabiand] Introduce a support lifecycle and Kubernetes target version.
- [#10001][machadovilaca] Fix
kubevirt_vmi_phase_count
not being created - [#9840][dhiller] Increase probability for flake checker script to find flakes
- [#9988][enp0s3] Always deploy the outdated VMI workload alert
- [#9882][dhiller] Add some context for initial contributors about automated testing and draft pull requests.
- [#9552][phoracek] gRPC client now works correctly with non-Go gRPC servers
- [#9818][akrejcir] Added "virtctl credentials" commands to dynamically change SSH keys in a VM, and to set user's password.
- [#9073][machadovilaca] Fix incorrect KubevirtVmHighMemoryUsage description
Contributors
78 people contributed to this release:
62 Victor Toso victortoso@redhat.com
55 Edward Haas edwardh@redhat.com
43 Or Mergi ormergi@redhat.com
42 fossedihelm ffossemo@redhat.com
39 Itamar Holder iholder@redhat.com
38 Alona Paz alkaplan@redhat.com
36 Vasiliy Ulyanov vulyanov@suse.de
27 Ondrej Pokorny opokorny@redhat.com
26 Daniel Hiller dhiller@redhat.com
26 Fabian Deutsch fabiand@redhat.com
21 Lee Yarwood lyarwood@redhat.com
19 Antonio Cardace acardace@redhat.com
19 Felix Matouschek fmatouschek@redhat.com
16 Luboslav Pivarc lpivarc@redhat.com
15 Jed Lejosne jed@redhat.com
14 Alexander Wels awels@redhat.com
12 Alvaro Romero alromero@redhat.com
12 João Vilaça jvilaca@redhat.com
11 Roman Mohr rmohr@google.com
10 enp0s3 ibezukh@redhat.com
9 Varun Ramachandra Sekar varun.sekar1994@gmail.com
9 prnaraya prnaraya@redhat.com
9 stirabos stirabos@redhat.com
8 Alex Kalenyuk akalenyu@redhat.com
8 Alice Frosi afrosi@redhat.com
8 Brian Carey bcarey@redhat.com
7 Andrew Burden aburden@redhat.com
6 L. Pivarc lpivarc@redhat.com
6 Vladik Romanovsky vromanso@redhat.com
5 Andrej Krejcir akrejcir@redhat.com
5 German Maglione gmaglione@redhat.com
4 Javier Cano Cano jcanocan@redhat.com
4 Michael Henriksen mhenriks@redhat.com
4 Miguel Duarte Barroso mdbarroso@redhat.com
3 Alay Patel alayp@nvidia.com
3 Dan Kenigsberg danken@redhat.com
3 Daniel Hiller daniel.hiller.1972@googlemail.com
3 Dharmit Shah shahdharmit@gmail.com
3 HHHskkk 913596231@qq.com
3 Janusz Marcinkiewicz januszm@nvidia.com
3 Or Shoval oshoval@redhat.com
3 Orel Misan omisan@redhat.com
3 Pavel Tishkov pavel.tishkov@flant.com
3 Shelly Kagan skagan@redhat.com
3 Shirly Radco sradco@redhat.com
3 bmordeha bmordeha@redhat.com
2 Andrei Kvapil kvapss@gmail.com
2 Arnon Gilboa agilboa@redhat.com
2 Assaf Admi aadmi@redhat.com
2 Benjamin 72671586+benjx1990@users.noreply.github.com
2 Oliver Sabiniarz o_sabiniarz@yahoo.de
2 PiotrProkop pprokop@nvidia.com
2 howard zhang howard.zhang@arm.com
2 liuzhen liuzhen@yunify.com
2 rkishner rkishner@redhat.com
2 rokkiter 101091030+rokkiter@users.noreply.github.com
2 yojay11717 lanyujie@inspur.com
1 Alay Patel alay1431@gmail.com
1 Andrea Bolognani abologna@redhat.com
1 Aviv Litman alitman@alitman-thinkpadp1gen4i.tlv.csb
1 Aviv Litman alitman@alitman.tlv.csb
1 Aviv Litman alitman@redhat.com
1 Eng Zer Jun engzerjun@gmail.com
1 Itamar Holder 77444623+iholder101@users.noreply.github.com
1 Marcelo Tosatti mtosatti@redhat.com
1 Maya Rashish mrashish@redhat.com
1 Nahshon Unna-Tsameret nunnatsa@redhat.com
1 Nijin Ashok nashok@redhat.com
1 Petr Horacek hrck@protonmail.com
1 Reficul xuzhenglun@gmail.com
1 SIMON COTER simon.coter@oracle.com
1 akrgupta akrgupta@redhat.com
1 grass-lu 284555125@qq.com
1 rokkiter yongen.pan@daocloud.io
1 wangzihao05 wangzihao05@inspur.com
1 yangchenjun yang.chenjun@99cloud.net
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-----
iQJIBAABCAAyFiEEL3WFe2eU+K2zCASGa/gKvUPjd9MFAmVJFEgUHGFjYXJkYWNl
QHJlZGhhdC5jb20ACgkQa/gKvUPjd9MRHw/+JPPjMkrU7mFc/W1HmgVYXPJb8gJc
cdcAHfMGVnEwyBlTnVarYwQ8jLnoh6Z31TnVv59q0kpWeoqDTrrFjUlGxjtUCEAV
o1buoExdnVwe0/NJHskrg0Fi4wTu10eVSA+TQitJ4ms074QBFZJLVGwipjd7wfMU
dP7BQ4HgjmE61IfmF2tVuemzcdSODCywyf7rF9tUxfIkvyUWF3evURVqEpaQ0ofZ
noyjrdi+2ENm/Z+8qi6KhSsH3y8cmNAywtikCY+mqDUDki/Fo769Q/HwbZpMmOQk
oV8MJQW2ll20FfQbRXBSfibFA/Jmk1PRRofsYnK7LFAiEjLsP1EF0UWCKdnWBE6z
jibsaV4TQZgTfkyc8scBKW/brEQJbbawBZCvzn4HZ5ZI+GYW8Jr8/sUrIOIcCrna
CxDDYQS0V1oGTLLozf48pGaCBt52Gdn6Ca48QZlzhIOOJU2ljA1wuO6yL63VpQus
R6ggcidAB1G1B1aFW+KmQ0OLktA4icM43FfxPgDm8X2q0gHIMMRb5zVYwCJVrZij
tRrnbwP5hefQY2/AaPkL3IFTJDu7izeyjd6MS3f1T98Gw5+1S4Ttjy5zCXfX89Gf
6odpr0Zp/AAz9uRpDBQ5olmd8qNyff4OkHLXb7b/Ju9cM3TuZ2VoavkeWVcvyArC
c0nRNE0/o/0QRxo=
=cK5H
-----END PGP SIGNATURE-----