Libvirt 8.0.0 发布,Linux 虚拟化库
Libvirt 库是一种实现 Linux 虚拟化功能的 Linux API,它支持各种虚拟机监控程序,包括 Xen 和 KVM,以及 QEMU 和用于其他操作系统的一些虚拟产品。
目前 Libvirt 8.0.0 发布了,带来大量更新项:
安全
- libxl:修复潜在的死锁和崩溃 (CVE-2021-4147)
恶意访客可能会不断地重新启动自身,导致主机上的 libvirtd 死锁或崩溃,从而制造拒绝服务攻击(DOS)的条件。
删除功能
- qemu:为严格模式的 numatune 明确禁止实时更改节点集
对于 <numatune/> 的严格模式,不能保证内存完全移动到新的节点集(例如 QEMU 可能已经锁定了内存),从而违反了严格模式的条件。如果需要在 NUMA 节点之间实时迁移 QEMU 内存,建议改用限制模式。
新特性
- qemu:磁盘复制操作的同步写入模式
blockdev-mirror 块作业支持将虚拟机的写操作同步传播到副本的目的地,确保任务在繁重的 I/O 下收敛。
- TCG 域特性
Libvirt 现在可以为 TCG 域设置翻译块(translation block )缓存大小 (tb-size)。
- qemu:添加用于在域中注入启动密钥的新 API
添加了新的 API virDomainSetLaunchSecurityState() 和 virsh 命令 domsetlaunchsecstate ,以支持在域的内存中注入启动密钥。
改进
- libxl:实现
virDomainGetMessagesAPI - qemu:在外部快照和块复制后,保留 qcow2 子集群的分配状态
除此之外,Libvirt 8.0.0 还包含一些 Bug 修复,详细内容可在更新公告中阅览。