KVM是Linux的一部分。Linux是KVM的一部分。Linux拥有的一切,KVM也拥有。但有一些特定的功能使KVM成为企业首选的虚拟机监控程序。
安全
KVM使用以下组合安全增强型Linux(SELinux)和安全虚拟化(sVirt),以增强VM安全性和隔离性。SELinux围绕虚拟机建立安全边界。sVirt扩展了SELinux的功能,允许将强制访问控制(MAC)安全应用于来宾虚拟机,并防止手动标记错误。
保管部
KVM能够使用Linux支持的任何存储,包括一些本地磁盘和网络连接存储(NAS)多路径I/O可用于改善存储并提供冗余。KVM还支持共享文件系统,因此VM映像可以由多个主机共享。磁盘映像支持精简资源调配,按需分配存储,而不是全部提前分配。
硬件支持
KVM可以使用各种经过认证的Linux支持的硬件平台。由于硬件供应商定期为内核开发做出贡献,因此最新的硬件功能通常会在Linux内核.
内存管理
KVM继承了Linux的内存管理特性,包括非统一内存访问和内核同页合并。虚拟机的内存可以交换,由大卷支持以获得更好的性能,也可以由磁盘文件共享或支持。
实时迁移
KVM支持实时迁移,即在不中断服务的情况下在物理主机之间移动正在运行的虚拟机。VM保持通电,网络连接保持活动,应用程序在VM重新定位时继续运行。KVM还保存虚拟机的当前状态,以便以后可以对其进行存储和恢复。
性能和可扩展性
KVM继承了Linux的性能,如果客户机和请求的数量增加,KVM可以扩展以匹配需求负载。KVM允许对最苛刻的应用程序工作负载进行虚拟化,并且是许多企业虚拟化设置的基础,例如数据中心和私有云(通过OpenStack®(OpenStack™)).
调度和资源控制
在KVM模型中,VM是一个Linux进程,由内核调度和管理。Linux调度程序允许对分配给Linux进程的资源进行细粒度控制,并保证特定进程的服务质量。在KVM中,这包括完全公平的调度程序、控制组、网络名称空间和实时扩展。
更低的延迟和更高的优先级
Linux内核具有实时扩展功能,允许基于虚拟机的应用程序以较低的延迟运行,并具有更好的优先级(与裸机相比)。内核还将需要较长计算时间的进程划分为较小的组件,然后相应地对这些组件进行调度和处理。