第 19 章 虚拟化
VT 发布的中断
Red Hat Enterprise Linux 现在支持 CPU 端发布中断中的直接 I/O (VT-d)的 Intel 虚拟化技术。启用 VT 发布的中断功能后,可以直接分配设备的外部中断可以传送到客户机,而无需由虚拟机管理器协助,即使客户机以非 root 模式运行。(BZ#1172351)
Hyper-V 存储驱动程序(storvsc)已更新
Hyper-V 存储驱动程序(storvsc)已从上游更新。这为某些工作负载使用 Hyper-V storvsc 驱动程序时,这提高了 I/O 操作的性能。(BZ#1287040)
Hyper-V 时钟源更改为使用 TSC 页面
在这个版本中,时间戳计数器(TSC)页面用作 Hyper-V 时钟源。TSC 页面提供了一种比之前使用的特定于模型的寄存器(MSR)计算每个客户机引用计数器值的效率。因此,涉及读取时间戳的内核操作现在可以更快。(BZ#1300325)
libguestfs rebase 到版本 1.32.7
libguestfs 软件包已升级到上游版本 1.32.6,它提供很多程序错误修复和增强。主要变化包括:
- 添加了
virt-get-kernel
工具,可用于从磁盘镜像文件中提取内核和初始 RAM 文件系统(initramfs)。详情请查看 virt-get-kernel (1)手册页。 - 添加了 virt-dib 工具。它的功能包括构建磁盘镜像文件和 ramdisk。如需更多信息,请参阅 virt-dib (1)手册页。
virt-v2v
和 virt-p2v
添加对最新 Windows 版本的支持
virt-v2v
工具现在包括对转换使用 Windows 8、8.1 和 10 的虚拟机的支持,以及 VMWare hypervisor 中的 Windows Server 2012 和 2012R2,以便在 KVM、Red Hat Enterprise Virtualization 和 OpenStack 上运行。此外,virt-p2v
工具现在包括对将上述 Windows 系统转换为与 KVM、Red Hat Enterprise Virtualization 和 OpenStack 兼容的虚拟机的支持。(BZ#1190669)
libvirt 添加了管理 API
在这个版本中,为
libvirtd
服务启用管理界面。与持久的 libvirtd
配置不同,可以使用 libvirtd.conf
文件调整,并在每次修改时需要守护进程重启,管理界面允许用户随时更改守护进程集。此外,管理界面提供了多种监控当前守护进程设置的方法。
具体来说,API 启用的操作包括:
- 列出所有守护进程服务器
- 列出所有客户端连接
- 提供有关客户端连接的详细信息
- 以强制的方式关闭单个客户端连接
- 将限制重新配置到主机上允许的客户端数量和活跃的 worker 线程。
可以使用 virt-admin 实用程序控制管理界面,该工具基于现有的 virsh 客户端。如需更多信息,请参阅 virt-admin (1)手册页。(BZ#735385)
完全支持 virt-p2v
现在完全支持在 Red Hat Enterprise Linux 7.2 中引入的
virt-p2v
工具。它启用了将物理机器转换为与 KVM 管理程序兼容的虚拟机,之前作为技术预览提供。
virt-p2v
作为 ISO 镜像提供,其中包含最小 Red Hat Enterprise Linux 发行版和工具本身。要转换物理机,请将 ISO 镜像刻录到 CD,并使用它来引导物理机。还支持 PXE 引导和 USB 引导。之后,请按照屏幕说明执行手动转换或激活自动转换。
如需更多信息,请安装 virt-v2v 软件包并查看 virt-p2v (1)手册页,或者参阅以下知识库文章:
新软件包: libvirt-nss
Red Hat Enterprise Linux 7.3 添加了 libvirt-nss 软件包,它可让您使用 libvirt 网络安全服务(NSS)模块。此模块可让您更轻松地使用 TLS、SSL、SSH 和其他远程登录服务连接到客户机。此外,它还提供了使用主机名转换的工具程序,如 ping。如需更多信息,请参阅 Red Hat Enterprise Linux 7 虚拟化部署和管理指南。(BZ#1325996)
KVM 客户端上支持的 Intel Xeon v5 处理器
现在,在 KVM 管理程序和内核代码中添加了对 Intel Xeon v5 处理器的支持,以及
libvirt
API。这可让 KVM 客户机虚拟机使用以下功能: MPX、XSAVEC、XGETBV1。(BZ#1327599)
VirtIO 1.0 完全支持
现在完全支持在 Red Hat Enterprise Linux 7.2 中引入的 virtio 1.0 设备。(BZ#1227339)
可以为指定网络手动管理 libvirt
iptables 规则
libvirt
会自动生成并应用适合它创建的每种网络的 iptables 规则。规则由每个网络配置中的 forward 模式
控制。在以前的版本中,用户无法禁用这些自动生成的 iptables 规则并手动管理 iptables 规则。在当前发行版本中,添加了 open
network forward 模式
。当为网络指定时,libvirt
不会为网络生成任何 iptables 规则。因此,在 libvirt
范围外添加的 iptables 规则不会中断,用户可以手动管理 iptables 规则。(BZ#846810)
open-vm-tools rebase 到版本 10.0.5
open-vm-tools 软件包已升级到上游版本 10.0.5,它提供很多程序错误修复和增强。值得注意的是,它引入了客户机操作系统自定义(GOSC)和静默快照功能。(BZ#1268537)
virt-who 正确处理 HTTP 错误 429
当 Subscription Manager 加载太大时,可能会将 HTTP 错误代码 429 返回到与客户端的限制通信。在以前的版本中,virt-who 无法正确处理这个错误代码,从而导致子优化行为。在这个版本中,virt-who 可以正确地处理 HTTP 错误代码 429,并在以后重试与 Subscription Manager 的通信。(BZ#1286945)
支持加密的 Hyper-V 连接 virt-who
在以前的版本中,virt-who 使用未加密的 Hyper-V 连接。所有数据以纯文本形式发送。这对 Hyper-V 服务器有安全影响,且需要在 Hyper-V 服务器上进行特殊配置。在这个版本中,virt-who 使用 Windows NT LAN Manager (NTLM)封装和签名来保护与 Hyper-V 服务器的通信。(BZ#1278637)
用于注册不基于 Red Hat Enterprise Linux 的虚拟机监控程序的新频道
在以前的版本中,virt-who 会为每个注册的 hypervisor 使用一个 Red Hat Enterprise Linux 6 订阅,即使注册的管理程序不是基于 Red Hat Enterprise Linux 的管理程序。在这个版本中,virt-who 会创建并使用名为 Hypervisor Base 的新频道在 Satellite 5 上注册 hypervisor。因此,virt-who 现在将 Hypervisor Base 频道用于新注册的 hypervisor,且不消耗不必要的 Red Hat Enterprise Linux 6 订阅。(BZ#1245035)
IBM z 系统上的 Diag0c 完全支持
Red Hat Enterprise Linux 7.3 对 IBM z Systems 上的 Diag0c 功能提供全面支持。Diag0c 支持使得可以读取 z/VM hypervisor 提供的 CPU 性能指标,并允许获取执行诊断任务的 Linux 客户机的每个在线 CPU 的管理时间。(BZ#1278795)
libvirt
API 为 USB 设备生成地址
在这个版本中,
libvirt
为 USB 设备生成地址。这些设备以及 libvirt
- 生成的地址子项可在域 XML 文件中找到。这样可确保将来的启动、恢复和迁移操作对客户机的 USB 设备具有一致的地址。因此,您可以将附加 USB 设备的虚拟机迁移到其中。(BZ#1215968)
WALinuxAgent rebase 到版本 2.2.0
Windows Azure Linux 代理已升级到上游版本 2.2.0,它提供很多程序错误修复和增强。此代理支持 Windows Azure 云中的 Linux 虚拟机的置备并运行,并应该安装在为在 Windows Azure 环境中运行的 Linux 镜像上。WALinuxAgent 软件包在 Extras 频道中提供。(BZ#1387783)