虚拟化基础知识
2016-01-03 00:00
375 查看
摘要: 虚拟化技术:Xen KVM and Qemu 的相关知识笔记
1.VMWare,VirtualBox,Xen和KVM都是VMM,即虚拟机管理程序或者虚拟机监视程序,可以创建/运行/管理虚拟机
2.VMWare 和VirtualBox一般作为客户端应用程序运行在桌面或者服务器上,而Xen和KVM是面向裸机的虚拟化管理程序,更能发挥接近物理硬件(裸机)的高性能,面向服务器。
3.VMWare和VirtualBox可运行在Windows和Linux上,可以创建windows和linux的虚拟机;Xen和KVM都是基于Linux内核,所以只可以运行在Linux上,但可以创建Windows的虚拟机。
4.VMWare公司和Citrix公司都提供虚拟化解决方案,VMWare专注服务器虚拟化,Citrix专注桌面虚拟化和应用虚拟化。类似提供虚拟化的公司有MS,Oracle
对比 VMvare Citrix
VMware vSphere(EXSi) XenServer(Xen)
VMvare Horizon View XenvDesktop
VMware ThinApp XenApp
5.虚拟化:硬件虚拟化和软件虚拟化(操作系统虚拟化和应用程序虚拟化)
1.单cpu模拟多cpu或者x86 cpu模拟arm cpu
2.一个操作系统上运行多个操作系统,且各自应用程序隔离
6.全虚拟化:又叫硬件辅助虚拟化,在虚拟机和硬件之间加了一个软件hypervisor,即一个VMM(type1运行在硬件上,如Exsi和KVM,type2运行在另一个OS上,如Qemu和Wine)
半虚拟化:又叫准虚拟化,在全虚拟化的基础上,增加一层API来优化客户系统的指令,如Xen。
7.
Xen: 支持全虚拟化(Full)和半虚拟化(Para), 倾向于半虚拟化。基于linux内核,与linux结合紧密,但有自己的进程调度器,存储管理模块等,启动时会虚拟机管理程序Domain0(即一个主虚拟机,管理其他虚拟机Domain1-DomainN)
KVM:支持全虚拟化(Full)和半虚拟化(Para),倾向于全虚拟化。基于linux内核,没有自己的进程调度器、存储管理模块等,直接使用linux内核作为他的虚拟机管理程序。目前的Linux都已经默认集成了KVM。
QEMU:quick-emulator,一个纯粹的模拟器,可以模拟任何硬件,主要是cpu。KVM和Xen都用到了QEMU,使用或者其基本功能。
(libvirt API是一套虚拟化攻击的C函数库,支持与其他语言的绑定, 包含五大模块:虚拟机监控程序连接api,域api,网络api,存储卷api和存储池api。同时提供一个守护进程libvirtd和一个命令行工具virsh。)
8.KVM与Linux的完美集成,比如直接利用新内核的特性,升级简单,致使越来越多的人使用KVM,所以KVM的流行度正大于XEN。(XEN可以提供更高性能的裸机虚拟化,但简单性和易用性较差)
9.Linux虚拟机管理程序(GUI),开源或者免费的有virtualbox, aqemu, virt-manager
1.VMWare,VirtualBox,Xen和KVM都是VMM,即虚拟机管理程序或者虚拟机监视程序,可以创建/运行/管理虚拟机
2.VMWare 和VirtualBox一般作为客户端应用程序运行在桌面或者服务器上,而Xen和KVM是面向裸机的虚拟化管理程序,更能发挥接近物理硬件(裸机)的高性能,面向服务器。
3.VMWare和VirtualBox可运行在Windows和Linux上,可以创建windows和linux的虚拟机;Xen和KVM都是基于Linux内核,所以只可以运行在Linux上,但可以创建Windows的虚拟机。
4.VMWare公司和Citrix公司都提供虚拟化解决方案,VMWare专注服务器虚拟化,Citrix专注桌面虚拟化和应用虚拟化。类似提供虚拟化的公司有MS,Oracle
对比 VMvare Citrix
VMware vSphere(EXSi) XenServer(Xen)
VMvare Horizon View XenvDesktop
VMware ThinApp XenApp
5.虚拟化:硬件虚拟化和软件虚拟化(操作系统虚拟化和应用程序虚拟化)
1.单cpu模拟多cpu或者x86 cpu模拟arm cpu
2.一个操作系统上运行多个操作系统,且各自应用程序隔离
6.全虚拟化:又叫硬件辅助虚拟化,在虚拟机和硬件之间加了一个软件hypervisor,即一个VMM(type1运行在硬件上,如Exsi和KVM,type2运行在另一个OS上,如Qemu和Wine)
半虚拟化:又叫准虚拟化,在全虚拟化的基础上,增加一层API来优化客户系统的指令,如Xen。
7.
Xen: 支持全虚拟化(Full)和半虚拟化(Para), 倾向于半虚拟化。基于linux内核,与linux结合紧密,但有自己的进程调度器,存储管理模块等,启动时会虚拟机管理程序Domain0(即一个主虚拟机,管理其他虚拟机Domain1-DomainN)
KVM:支持全虚拟化(Full)和半虚拟化(Para),倾向于全虚拟化。基于linux内核,没有自己的进程调度器、存储管理模块等,直接使用linux内核作为他的虚拟机管理程序。目前的Linux都已经默认集成了KVM。
QEMU:quick-emulator,一个纯粹的模拟器,可以模拟任何硬件,主要是cpu。KVM和Xen都用到了QEMU,使用或者其基本功能。
(libvirt API是一套虚拟化攻击的C函数库,支持与其他语言的绑定, 包含五大模块:虚拟机监控程序连接api,域api,网络api,存储卷api和存储池api。同时提供一个守护进程libvirtd和一个命令行工具virsh。)
8.KVM与Linux的完美集成,比如直接利用新内核的特性,升级简单,致使越来越多的人使用KVM,所以KVM的流行度正大于XEN。(XEN可以提供更高性能的裸机虚拟化,但简单性和易用性较差)
9.Linux虚拟机管理程序(GUI),开源或者免费的有virtualbox, aqemu, virt-manager
相关文章推荐
- 简单易懂云计算(转自天涯感谢原楼主iamsatisfied)
- XP下使用虚拟机安装配置Solaris[多图]
- VirtualBox虚拟机XP与宿主机Ubuntu互访共享文件夹
- 2011云计算知识库:盘点千奇百怪的云名称
- Linux下三大免费桌面虚拟机评测
- 用 GNOME Boxes 下载一个操作系统镜像
- android 使用虚拟机安装apk(图文教程)
- Vmware虚拟机的安装及配置方法
- 深入解析java虚拟机
- Java虚拟机JVM性能优化(二):编译器
- apache虚拟机配置步骤和修改访问端口的方法(虚拟机端口映射)
- unity3d发布apk在android虚拟机中运行的详细步骤(unity3d导出android apk)
- 用C语言来实现一个简单的虚拟机
- 解析wamp5下虚拟机配置文档
- Java虚拟机JVM性能优化(三):垃圾收集详解
- Java虚拟机最多支持多少个线程的探讨
- Java虚拟机JVM性能优化(一):JVM知识总结
- 虚拟机linux端mysql数据库无法远程访问的解决办法
- Nginx服务器中浏览器本地缓存和虚拟机的相关设置