kvm虚拟了哪些硬件,kvm虚拟机是干什么的
- 综合资讯
- 2024-09-30 07:29:06
- 4

***:KVM(基于内核的虚拟机)是一种开源的系统虚拟化技术。它主要虚拟CPU、内存、磁盘I/O、网络等硬件。在功能方面,KVM虚拟机可让一台物理主机运行多个相互隔离的...
***:KVM(Kernel - based Virtual Machine)是基于内核的虚拟机。它可虚拟多种硬件,如虚拟CPU,为虚拟机提供计算能力;虚拟内存,分配和管理虚拟机的内存资源;虚拟磁盘,存储虚拟机的数据;还虚拟网络设备,使虚拟机能够联网通信等。KVM虚拟机的主要作用是在单个物理主机上创建多个隔离的虚拟环境,实现多系统并行运行,提高硬件资源利用率,便于系统测试、部署等操作。
本文目录导读:
《深入解析KVM虚拟机:虚拟硬件及其功能》
KVM虚拟机简介
KVM(Kernel - based Virtual Machine)是一种基于Linux内核的开源全虚拟化解决方案,它允许在单个物理主机上运行多个虚拟机,每个虚拟机都可以运行自己的操作系统,就像在独立的物理机器上一样。
KVM虚拟的硬件
(一)虚拟CPU(vCPU)
1、模拟指令集
- KVM可以模拟多种CPU指令集,如x86、x86 - 64等,这使得虚拟机能够运行与物理CPU兼容的操作系统和应用程序,对于x86架构的虚拟机,它能够执行诸如算术运算、逻辑运算、数据移动等基本指令,就像在真实的x86物理机上一样。
- 在多vCPU的配置下,KVM可以为虚拟机分配多个虚拟处理器核心,这对于运行多线程应用程序或多任务操作系统非常有用,一个数据库服务器虚拟机可以被分配多个vCPU,以提高数据库查询处理和并发事务处理的效率。
2、资源分配与调度
- 可以灵活地分配vCPU资源,管理员可以根据虚拟机的需求,为其分配一定比例的物理CPU时间片,在一个拥有四核物理CPU的主机上,如果有两个虚拟机,一个可以被分配2个vCPU,另一个分配2个vCPU,并且KVM的调度器会根据设定的策略,如公平共享、优先级等,在物理CPU上合理调度这些vCPU的运行时间。
(二)虚拟内存
1、内存分配
- KVM为虚拟机提供虚拟内存空间,它可以从物理主机的内存中划分出一部分给虚拟机使用,在一台拥有16GB物理内存的主机上,可以为一个虚拟机分配2GB的虚拟内存,虚拟机内的操作系统和应用程序看到的就是这2GB的连续内存空间,而实际上这2GB的内存可能是物理内存中不连续的部分。
- 支持内存的动态分配,如果虚拟机的内存需求随着运行的应用程序而变化,KVM可以根据设定的策略,如在虚拟机内存不足时,从物理主机的空闲内存中为其分配更多的内存;当虚拟机内存使用率降低时,回收部分内存供其他虚拟机或主机使用。
2、内存保护
- 每个虚拟机的内存是相互隔离的,这意味着一个虚拟机内的进程不能直接访问其他虚拟机的内存空间,保证了虚拟机之间的安全性,即使一个虚拟机中的恶意程序试图访问其他虚拟机的内存,KVM的内存管理机制会阻止这种非法访问,防止数据泄露和恶意篡改。
(三)虚拟网络设备
1、虚拟网卡(vNIC)
- KVM可以为虚拟机创建虚拟网卡,这些虚拟网卡可以连接到不同类型的虚拟网络,有桥接网络模式,在这种模式下,虚拟机的vNIC就像连接在物理网络中的真实网卡一样,可以直接从物理网络获取IP地址,与物理网络中的其他设备进行通信。
- 还有NAT(网络地址转换)模式,虚拟机通过主机的网络地址转换功能与外部网络通信,在这种模式下,虚拟机的IP地址是内部私有地址,通过主机的NAT功能将其内部流量转换为外部可识别的IP地址进行通信。
- 还有仅主机(host - only)模式,虚拟机只能与主机以及其他处于同一仅主机网络中的虚拟机进行通信,这种模式适用于构建内部测试环境等场景。
2、虚拟交换机(vSwitch)
- KVM可以创建虚拟交换机来连接多个虚拟机的vNIC,这类似于物理网络中的交换机功能,在一个数据中心的虚拟化环境中,可以创建一个虚拟交换机,将多个需要相互通信的虚拟机连接起来,实现虚拟机之间的高速数据交换,同时还可以通过配置虚拟交换机的端口安全、VLAN(虚拟局域网)等功能,来管理虚拟机之间的网络流量和隔离。
(四)虚拟磁盘
1、磁盘镜像文件
- KVM使用磁盘镜像文件来模拟虚拟机的磁盘,常见的磁盘镜像格式有qcow2、raw等,qcow2格式具有许多优点,它支持稀疏文件,即只占用实际写入数据的磁盘空间,而不是一开始就分配整个磁盘大小的空间,这对于节省物理磁盘空间非常有用。
- 可以方便地创建、克隆和移动磁盘镜像文件,通过克隆一个现有的虚拟机磁盘镜像,可以快速创建多个具有相同操作系统和初始配置的虚拟机,这在大规模部署虚拟机时可以大大提高效率。
2、磁盘I/O模拟
- KVM模拟磁盘的I/O操作,当虚拟机内的操作系统或应用程序对磁盘进行读写操作时,KVM会将这些操作转换为对物理磁盘或存储设备的实际操作,它可以根据物理磁盘的性能和虚拟机的磁盘I/O需求,采用不同的调度策略,如先来先服务、优先级调度等,以优化磁盘I/O性能。
(五)虚拟输入输出设备
1、虚拟键盘和鼠标
- 为虚拟机提供虚拟的键盘和鼠标输入设备,当用户在虚拟机控制台界面操作时,就像在操作一台真实的计算机一样,虚拟机内的操作系统能够接收到虚拟键盘的按键输入和虚拟鼠标的移动、点击等操作。
- 支持多种输入方式的转换,可以将物理主机的键盘和鼠标输入重定向到虚拟机,或者通过虚拟机管理工具进行远程输入操作。
2、虚拟显示设备
- 虚拟机有虚拟的显示设备,通过虚拟机管理工具,如Virt - Manager,可以查看虚拟机的显示输出,就像查看物理计算机的显示器一样,这对于安装操作系统、配置虚拟机等操作非常重要,因为用户可以直观地看到虚拟机内操作系统的启动过程、图形界面等。
KVM通过对这些硬件的虚拟,为构建高效、灵活、安全的虚拟化环境提供了基础,广泛应用于云计算数据中心、企业内部服务器整合、开发测试环境等场景。
本文链接:https://zhitaoyun.cn/81033.html
发表评论