Linux下建议使用VirtualBox做虚拟机,因为vmware安装麻烦,qemu功能不够全。具体的安装命令:ubuntu或debian: sudo apt(-get) install virtualboxFedora或Redhat: sudo dnf install virtualboxArch Linux: sudo pacman -S virtualbox深入了解linux建议学习《linux就该这么学》这本书
物理环境内存4G ,CPU4个,动态硬盘120G
KVM:
硬盘测试瞬间读取速度Timing cached reads: 23668 MB in 2.00 seconds = 11858.17 MB/sec Timing buffered disk reads: 294 MB in 3.02 seconds = 123.37 MB/sec
读取硬盘1G数据速度1024000000 bytes (1.0 GB) copied, 87.253 seconds, 11.7 MB/s写入硬盘1G数据速度1024000000 bytes (1.0 GB) copied, 10.5519 seconds, 97.0 MB/s
CPU测试二级缓存Cat /proc/cpuinfocache size : 32 KB
运行一个shell运算脚本 用时13分钟Cpu(s): 5.5%us, 0.6%sy, 0.0%ni, 93.3%id, 0.1%wa, 0.4%hi, 0.1%si, 0.0%stCpu(s): 0.1%us, 0.2%sy, 0.0%ni, 98.8%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu 使用量在 0.1%~~5.5%,比较均匀的增减;内存和交换分区都比较稳定
内存使用测试执行一个耗费内存的程序 ,运行时间 3分钟,立即消耗内存到最大Mem: 3945756k total, 2854516k used, 1091240k free, 288700k buffersSwap: 1020088k total, 8k used, 1020080k free, 2278948k cached
Mem: 3945756k total, 3919740k used, 26016k free, 12188k buffersSwap: 1020088k total, 100k used, 1019988k free, 3645968k cached
Vmware:瞬间硬盘读取:Timing cached reads: 24068 MB in 2.00 seconds = 12058.10 MB/secTiming buffered disk reads: 790 MB in 3.00 seconds = 263.06 MB/sec
读取硬盘1G数据速度1024000000 bytes (1.0 GB) copied, 70.1827 seconds, 14.6 MB/s写入硬盘1G数据速度1024000000 bytes (1.0 GB) copied, 4.5338 seconds, 226 MB/s
CPU 二级缓存Cat /proc/cpuinfo
cache size : 8192 KB
运行一个shell运算脚本 用时10分钟Cpu(s): 4.9%us, 0.7%sy, 0.0%ni, 94.1%id, 0.1%wa, 0.0%hi, 0.1%si, 0.0%stCpu(s): 0.0%us, 0.0%sy, 0.0%ni, 99.7%id, 0.2%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu利用量Cpu 使用量在 0.1%~~4.9%,有不大的起伏;内存和交换分区都比较稳定
内存使用 执行耗费内存程序,执行时间5分钟,缓慢消耗内存到最大Mem: 4044464k total, 2974892k used, 1069572k free, 56892k buffersSwap: 1020088k total, 16k used, 1020072k free, 2605660k cached
Mem: 4044464k total, 4016472k used, 27992k free, 12296k buffersSwap: 1020088k total, 116k used, 1019972k free, 3692420k cached
综上所述:
Kvm 内存使用效率比较高,硬盘的写入速度很慢,CPU利用量稳定,也比较低VMware 内存使用效率不高,硬盘读写速度很快,CPU利用量高Kvm与Vmware 整体性能从数据上一次数据上看不出来,多次测试后,vmware就稍微明显地比RedHat的kvm性能好很多。
但是这比较的仅仅是性能,而在开发过程中,开发工具或者环境的专业性和便捷性更为重要
KVM提供的虚拟化需要硬件的支持,是基于硬件的完全虚拟化。自Linux 2.6.20之后集成在Linux的各个主要发行版中。它使用Linux自身的调度器进行管理,所以相对于Xen,其核心源码很少。KVM目前已成为学术界的主流VMM之一。
而且KVM是GPL的自由开源软件,这一点与Linux的相得益彰。所以,基于我个人认为在Linux开发这一块,KVM相对要专业一些,这个是在实际使用中切身体会到的。
福哥答案2020-09-08: 此答案来自知乎 KVM只是一个虚拟机技术,别的还有xen,商业的vmware、virtualbox等,它们都可以用来创建虚拟机。openstack是为了管理KVM之类的虚拟机而出现的管理平台。假设你有10台物理机,你有一个在这10台物理机上创建100台虚拟机的需求,openstack就可以帮你协调这些物理机,决定哪些虚拟机运行在哪些物理机上。以及它们的存储管理,还有相互之间的网络互通。以及和外界的通信等,各种围绕着这些虚拟机的配套服务。评论
Kvm与Vmware 整体性能从数据上一次数据上看不出来,多次测试后,vmware就稍微明显地比RedHat的 kvm性能好很多。
个人觉得区别是VMware可以作为独立的第三方软件能安装多种不同的操作系统之上,而 KVM技术只能在Linux服务器上使用。问题延伸:由于虚拟化的趋势上升,市场的实体机逐渐减少,凡是有大起必有大落。虚拟机无法连接USB设备,那么如何解决虚拟化之后,实现金融公司、大型集团公司、财务共享中心等散落在外的UKey呢(软件加密狗、网银 U 盾、财务税控盘、认证 UKey、电 子签章 UKey )?解决方案:通过EastFax USB Server可以实现。实现原理:第一. 把大量物理Ukey插在硬件USB设备上。(硬件支持千兆网、双电源双网口)第二. 通过EastFax USB Server的软件,可以准备一个IP地址,将USB设备映射在云上。第三. 然后云就可以通过这个IP/用户地址来找USB设备。第四. 可以通过软件一些功能,将UKEY进行分类、分配权限来授权用户、数据、日志查询、UKEY的使用状态等管理功能。
OpenStack是云管理平台,KVM、XenServer、VMware是HyperVisor,OpenStack最后调度的还是后面这几个,不一个层面的!或者说你这么理解吧,OpenStack云管理平台框架,有很多功能组件,比如说包含计算虚拟化、存储虚拟化、网络虚拟化、Image管理、身份认证管理、计费管理、前端展示模块等等。你问的KVM、XenServer、VMware只是计算虚拟化模块调用的后台实现技术而已。
1,VMware和KVM算是并行产品;2,VMware商用产品,KVM开源;3,有钱用VMware,有技术用KVM;市场占有率而言VMware是绝对的龙头,无人出其右4,Openstack基于VMware和KVM至上
据我的使用来看,kvm速度要快些,但是网络拓扑一旦复杂以后,kvm就难以管理,比如说一些企业级的应用。vmware的图形管理界面要顺手些 。
虚拟化的概念在近些年收到了很大程度上的普及,求其原因很简单:虚拟化能够最大程度利用资源,为企业节约成本。目前市面较受欢迎的虚拟架构主要有KVM、XEN和VMware,其中,KVM和XEN都是免费开源的,而VMware则是付费的,所以,此次笔者只对比KVM、XEN之间的差别。
如果给KVM、XEN简单归类的话,KVM是完全虚拟化技术又叫硬件辅助虚拟化技术(Full Virtualization)。相反,XEN是半虚拟化技术(paravirtualization),也叫做准虚拟化技术。
全虚拟化技术(左)与半虚拟化技术(右)
KVM是在虚拟机和硬件之间加了一个软件层--Hypervisor,或者叫做虚拟机管理程序(VMM),KVM的hypervisor是直接运行在物理硬件之上的。XEN是在全虚拟化的基础上,把客户操作系统进行了修改,增加了一个专门的API,使客户操作系统集成了虚拟化方面的代码,该方法无需重新编译或引起陷阱,因为操作系统自身能够与虚拟进程进行很好的协作。
KVM架构
也有人将KVM架构分解为两部分:KVM驱动,即linux kernel的一个模块和Qemu,即用于模拟虚拟机的用户空间组件,提供I/O设备模型,访问外设的途径。其最大的优势在于KVM使用Linux内核集成的,所以速度较快,同时,KVM是完全虚拟的,所以不需要区分pv和hvm,可以安装各种Linux发行版和Windows发行版,可以运行在支持虚拟化扩展的X86和X86-64硬件架构上。
XEN实际上出现的时间要早于KVM,它是由剑桥大学开发的,一个开源的虚拟机监视器。半虚拟化架构决定了它注定不是真正的虚拟机,只是自己运行了一个内核的例子,同时区分Xen+pv+和Xen+hvm,其中pv只支持Linux,而hvm则支持Windows系统。除此之外,XEN还拥有更好的可用资源、平台支持、可管理性、实施、支持动态迁移和性能基准等优势。
参考资料:http://server.zol.com.cn/586/5869108.html
推发布温馨提示: