当前位置:首页 > 虚拟机 > 正文

kvm和虚拟机的关系


一、KVM虚拟机平台搭建Hypervisor直接安装在物理机上,多个虚拟机运行在Hypervisor上。在这种虚拟化方法中,Hypervisor直接管理和访问硬件资源,不需要底层操作系统。也可以理解为hypervisor被做成一个非常瘦的操作系统。该方案的性能介于主机虚拟化和操作系统虚拟化之间。代表有VMwareESXServer、CitrixXenServer以及MicrosoftHyper-V、LinuxKVM。
类型2虚拟化:首先在物理机上安装传统操作系统,例如:、Ubuntu和Windows。Hypervisor作为操作系统上的程序模块运行并管理虚拟机。KVM、VirtualBox和VMwareWorkstation都属于这种类型。
架构:KVM是一种基于内核的虚拟化(Type2虚拟化),主要分为两部分。1、位于内核空间:主要负责虚拟机的虚拟CPU、vCPU,同时也管理和调度虚拟内存。2、QEMU-KVM:qemu运行在用户空间,kvm运行在内核空间,两者通过/dev/kvm进行通信。这个QEMU-KVM是一个专门用来创建和管理虚拟机的管理工具,通过修改QEMU代码,让KVM更好的处理内核。VM执行过程中,QEMU通过KVM模块提供的系统调用进入内核,KVM负责将虚拟机置于特殊的处理模式。虚拟机配有IO和其他设备。
实现示例:实验环境:VMwareWorkstation10、Centos7(64位)。前提条件:(VMware创建的虚拟机必须启用支持虚拟化,如下图红框所示)。1.检查系统是否支持。2.安装kvm相关包。3.创建虚拟化网桥。5.创建虚拟机。查看虚拟机列表。3)关闭虚拟机。5)启动虚拟机硬盘;8)添加硬盘;9)卸下硬盘。
二、kvm模块是什么KVM模块是Kernel-basedVirtualMachine的缩写,是Linux系统下的虚拟化模块。
KVM模块的功能主要是利用Linux内核提供的功能,通过硬件虚拟化技术,如IntelVT或AMD-V,提供完整的虚拟化环境。这允许多个完全独立的虚拟客户操作系统在单个物理服务器上同时运行。每个虚拟机都有自己独立的CPU、内存、硬盘、网络接口等硬件资源,从而实现资源隔离和高效利用。
从技术细节上来说,KVM模块被加载到Linux内核中,并作为可加载内核模块存在。当系统管理员加载KVM模块时,它会在物理CPU上创建一个或多个虚拟CPU,这些vCPU可供虚拟机使用。KVM还负责管理虚拟机的内存、设备和I/O操作,以保证虚拟机之间的隔离和安全。
例如,运行KVM的Linux服务器可以支持不同操作系统的多个虚拟机实例同时运行。对于用户来说,这些虚拟机实例似乎运行在独立的物理服务器上,具有完整的操作系统功能和独立的网络环境。该技术广泛应用于云计算、服务器集成、软件开发和测试等领域,极大提高了硬件资源的利用和管理效率。