kvm属于什么型虚拟化?
kvm是一种基于虚拟化扩展(Inter VT 或者 AMD-V)的X86硬件的开源Linux原生的全虚拟化解决方案。
在kvm中,虚拟机就是常规的Linux进程,由Linux统一调度;虚拟机的每一个虚拟CPU就是一个Linux进程,因此kvm可以使用Linux内核的功能。
kvm全称是基于内核的虚拟机(Kernel-based Virtual Machine),是一个开源软件,实际上是嵌入系统的一个虚拟化模块,通过优化内核来使用虚拟技术。kvm使Linux变成了一个hypervisor,虚拟机使用Linux自身的调度器进行管理。
使用Linux内核的功能。
kvm本身不支持硬件模拟,需要qemu程序通过/dev/kvm接口设置一个客户机虚拟服务器的地址空间,向他提供模拟I/O,并将其视频映射到宿主机的显示屏。
VMware和kvm哪个作为linux的虚拟机更好?
KVM: Cpu 使用量在 0.1%~~5.5%,比较均匀的增减;内存和交换分区都比较稳定 cache size : 8192 KB 综上所述:但是这比较的仅仅是性能,而在开发过程中,开发工具或者环境的专业性和便捷性更为重要KVM提供的虚拟化需要硬件的支持,是基于硬件的完全虚拟化。
自Linux 2.6.20之后集成在Linux的各个主要发行版中。它使用Linux自身的调度器进行管理,所以相对于Xen,其核心源码很少。
KVM目前已成为学术界的主流VMM之一。而且KVM是GPL的自由开源软件,这一点与Linux的相得益彰。所以,基于我个人认为在Linux开发这一块,KVM相对要专业一些,这个是在实际使用中切身体会到的。
kvm功能特性包括?
KVM本身不执行任何模拟,需要用户空间程序通过/dev/kvm接口设置一个客户虚拟服务器的地址空间,向它提供I/O,并将它的视频显示映射回宿主显示屏,该应用程序即为QEMU
内存管理
1.KVM有Linux强大的内存管理功能,可以以大页面的形式进行交换,也可以磁盘文件的形式进行共享。NUMA支持(非一致性内存访问,针对多处理器的内存设计)允许虚拟机有效访问大量内存
2.支持Intel的扩展页表(EPT)和AMD的嵌套页表(NPT,又称快速虚拟化索引-RVI),实现更高的cpu利用率和吞吐量
3.内存页面共享通过内核功能同页合并(KSM)来支持。KSM扫描每个虚拟机之间共享的页面,仅存储一个副本,将这些页面合并到一个在虚拟机之间共享的页面。若有客户更改,会得到自己的专用副本
存储
1.KVM能使用LInux支持的任何存储来存储虚拟机镜像,包括具有ID E、SCSI和SATA的本地磁盘,网络附加存储(NAS)(包括NFS和SAMBA/CIFS),或者支持iSCSI和光纤通道的SAN
2.KVM还支持全局文件系统(GFS2)等共享文件系统上的虚拟机镜像,以允许虚拟机镜像在多个宿主之间共享或者使用逻辑卷共享。
3.KVM的原生磁盘格式为QCOW2,支持快照,允许多级快照、压缩加密等功能
设备驱动
1.KVM支持混合虚拟化,其中准虚拟化的驱动程序安装在客户机操作系统中,允许虚拟机使用优化的I/O接口而不使用模拟设备。
2.KVM准虚拟化的驱动程序使用VirtIO标准,它是一个与虚拟机管理程序独立的、构建设备驱动程序的接口。可以为多个虚拟机管理程序使用同一组相同的设备驱动程序
性能和可伸缩性
1.KVM继承Linux的性能和可伸缩性,虚拟化很多方面可到非虚拟话原生环境的95%以上
2.KVM也有着良好的扩展性,可以支持多核cpu以及大量内存
LINUX的XEN和KVM到底区别在什么地方?
Xen是Linux下的一个虚拟化解决方案,但由于被Citrix收购后,变成了和红帽企业版一样了,卖服务收取费用,Redhat从rhel6.0开始已经从内核中把XEN踢出去了,全心投入开发免费的KVM,虽然市场上老用户还在用Xen,但相信kvm会逐步占领大面积的市场,必竟有redhat做为强大支持源。
Xen的实现方法是运行支持Xen功能的kernel,这个kernel是工作在Xen的控制之下,叫做Domain0,使用这个kernel启动机器后,你可以在这个机器上使用qemu软件,虚拟出多个系统。Xen的缺点是如果你需要更新Xen的版本,你需要重新编译整个内核,而且,稍有设置不慎,系统就无法启动。
相比较,KVM就简化的多了。它不需要重新编译内核,也不需要对当前kernel做任何修改,它只是几个可以动态加载的.ko模块。它结构更加精简、代码量更小。所以,出错的可能性更小。并且在某些方面,性能比Xen更胜一筹。
阿里云是基于什么虚拟化?
阿里云服务器ECS的虚拟化架构是基于KVM的,KVM开源虚拟化平台,为x86计算机开发的基于内核的虚拟机,将Linux内核转变成虚拟机管理程序,虚拟机可以直接访问硬件,是一种全虚拟化的裸机虚拟化技术。
KVM内置于Linux,是linux的内核的一个。