当前位置:首页 > 云计算 > 正文

云计算kvm是什么


一、openstack与KVM的关系是什么?

openstack与KVM的关系:

KVM是最底层的hypervisor,用于模拟CPU的运行,在KVM上完成虚拟机的运行,用户可能还需要网络以及外围I/O支持,借鉴qemu并进行一定修改,形成qemu-kvm。openstack不直接控制qemu-kvm。

Openstack是一个云管理平台,它本身不提供底层虚拟机管理程序(例如KVM、Qemu、Xen等)的虚拟化功能。所谓的管理平台只是为了方便。打个不恰当的比喻,像订单管理平台这样的产品,实际上只是集成了一系列的SQL调用。



相关信息

OpenStack的不同服务通过统一的REST连接——风格的API调用实现了系统的松耦合。内部部件的工作过程是一个有序的整体。计算资源分配、控制调度、网络通信等都是通过AMQP来实现的。OpenStack的顶级用户是程序员、普通用户以及Horizo​​n界面等模块。

这三者使用OpenStack各组件提供的API进行交互,并通过AMQP相互调用。它们共同利用底层虚拟资源为上层用户和应用提供云计算。由于OpenStack是一个开源云平台项目,其主要任务是为用户提供IaaS服务。


二、“KVM”是“Keyboard,Video,andMouse”的缩写,它的工作模型是什么?KVM是Keyboard、Video和Mouse的缩写,字面意思是“键盘、视频和鼠标”。该术语在计算领域非常常见,主要用于描述允许用户通过远程客户端设备(例如计算机或移动设备)控制另一台服务器或虚拟机的技术。通过KVM系统,用户可以使用本地键盘、鼠标和显示器来管理远程系统,就像直接在本地设备上操作一样。
KVM的中文拼音是jiànpánshìpínhéshǔbiāo,英文流行度是844,表明它在信息技术领域有着广泛的应用。缩写KVM主要分类在计算领域,特别是Driver子类别,与硬件驱动程序相关。KVM系统的运行模式是客户端/服务器模式,这意味着它在计算机系统的远程管理和维护中发挥着关键作用。
总体而言,KVM是一个实用的工具,它简化了远程管理流程,使技术人员无需依赖物理连接即可有效地控制和操作远程设备。该技术在云计算、数据中心管理、网络安全等领域有着重要应用,是现代信息技术不可或缺的一部分。
三、虚拟化与云计算中KVM,Xen,Qemu的区别和联系虚拟化类型
全虚拟化(FullVirtualization)
全虚拟化也成为最初的虚拟化技术。该模型使用虚拟机来协调来宾操作系统和本机硬件。为了协调来宾操作系统和裸硬件,虚拟机管理程序必须捕获并处理一些受保护的指令。
图1全虚拟化模型
全虚拟化运行速度比硬件模拟快,但性能不如裸机,因为hypervisor需要占用一些资源
半虚拟化(ParaVirtualization)
半虚拟化是另一种类似于全虚拟化的技术。它使用虚拟机管理程序来共享对底层硬件的访问,但来宾操作系统集成了虚拟化代码。这种方法不需要重新编译或陷阱,因为操作系统本身可以很好地与虚拟进程配合使用。
图2半虚拟化模型
半虚拟化需要客户操作系统进行一些修改,使客户操作系统意识到自己处于虚拟化环境中,但半虚拟化提供的性能与到原来的操作系统。
虚拟化技术
KVM(Kernel-basedVirtualMachine)基于内核的虚拟机
KVM是集成到Linux内核中的Hypervisor,是一个X86架构针对Linux的完整虚拟化解决方案,其硬件支持虚拟化技术(IntelVT或AMD-V)。它是Linux的一个小模块,利用Linux来做很多事情,比如任务调度、内存管理、与硬件设备交互等。
图3KVM虚拟化平台架构
Xen
Xen是第一种运行在裸机上的虚拟化管理程序(Hypervisor)。它支持全虚拟化和半虚拟化Xen支持虚拟机管理程序和虚拟机之间的通信,并在所有Linux版本上提供免费产品,包括RedHatEnterpriseLinux和SUSELinuxEnterpriseServer。Xen的主要优点是半虚拟化另外,不加修改的操作系统也可以直接运行在xen上(像Windows一样),这样虚拟机就可以高效运行,无需仿真,从而使虚拟机无需仿真就可以上hypervisor虚拟的。硬件,从而实现高性能。
图4Xen虚拟化平台架构
QEMU
QEMU是一套由FabriceBellard编写的模拟处理器的免费软件。它与Bochs和PearPC类似,但它具有后两者所不具备的一些特性,例如高速和跨平台能力。通过开源加速器kqemu,QEMU可以模拟接近真实计算机的速度。
KVM与QEMU的关系
准确地说,KVM是Linux
内核的一个模块。您可以使用modprobe命令加载KVM模块。模块加载后,可以通过其他工具进一步创建虚拟机。但仅靠KVM模块是不够的,因为用户无法直接控制核心模块来做事。您还必须在用户区域中运行一个工具。对于这个用户空间工具,kvm开发人员选择了已经成熟的开源虚拟化软件QEMU。说起来,QEMU也是一个虚拟化软件。它的特点是可以虚拟不同的CPU。例如,PowerCPU可以在x86CPU上虚拟化,并且可以用来编译可以在Power上运行的程序。KVM使用了QEMU的一部分,并对其进行了一些修改,成为可以控制KVM的用户空间工具。所以你会看到官方的KVM下载有两个部分(qemu和kvm)和三个文件(KVM模块、QEMU工具和两者的编译)。也就是说,您只能升级KVM模块或只能升级QEMU工具。这就是KVM和QEMU的关系。
图5KVM与QEMU关系