下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

对KVM虚拟化的总结(下)

作者:匿名     来源: 互联网点击数:1170发布时间: 2021-10-17 22:57:29

标签: 虚拟化KVM虚拟化总结

  在上一篇文章中,小编分享的学习总结注重在于对KVM虚拟化技术的概念和能力介绍上,从上一篇文章中,我们能对KVM虚拟化技术有一个大概的了解,知道它是什么东西,又能够用来做什么,本文就着重介绍一下KVM虚拟化技术的功能和它的一些管理工具,话不多说,大家一起跟小编来看一下吧。

  在KVM中,内存也允许超负荷使用,KVM允许分配给客户端的总内存大于实际可用的物理内存。

  通常有三种方法实现内存过载:

  (1) 内存交换(swapping):用交换空间(swapping)弥补内存不足。

  (2)气球(ballooning):由virio_balloon驱动,宿主Hypervisor与客户端的合作完成。

  (3)页面共享(pagesharing):通过KernelSamepageMerging与多个客户端进程合并使用的相同内存页面。

  在这些方法中,第一种内存交换方法是最成熟的(Linux很早就开始使用),但不建议使用虚拟内存。

  KVM(模块):

  在KVM模块中安装modprobe命令,如果在RPM中安装KVM软件包,系统会在启动时自动加载模块。装载模块后,虚拟机可以通过其他工具进一步创建。但仅仅使用KVM模块是远远不够的,因为用户不能直接控制内核模块来完成工作,还必须为用户提供工具。

  QEMU(管理工具):

  QEMU是一款功能强大的虚拟化软件,可以虚拟不同的CPU架构。例如,将Power的CPU虚拟为x86的CPU,并使用CPU编译可以在Power上运行的程序。

  QEMU-KVM(管理工具):

  使用QEMU基于x86部分的KVM,稍作修改,形成用户空间工具QEMU-KVM,控制KVM内核模块。所以在Linux发行版中,KVM内核模块和QEMU-KVM工具分为内核部分。

  virsh,virsh,virt-manager(管理工具):

  RedHat为libvirt、libguestfs等KVM开发了更多的辅助工具。因为QEMU工具效率低下,不易使用。Libvirt是一组API,提供多种语言接口,为各种虚拟化工具提供方便可靠的编程接口。这些工具不仅支持KVM,还支持Xen等虚拟机。Libvirt不仅提供API,还有一套命令virsh来管理基于文本的虚拟机。您可以使用virsh命令使用libvirt。但最终用户更渴望图形用户界面,这就是virt-manager。这是一个由python编写的管理图形化虚拟机界面,用户可以直观地操作不同的虚拟机。使用libvirt的API来实现Virt-manager。

  在KVM模型中,每台虚拟机都是Linux调度程序管理的标准流程,您可以在用户空间启动客户端操作系统。正常的Linux过程有两种运行模式:内核和用户。KVM增加了第三种模式:客户模式。

  核心模块导出一个叫做/dev/kvm的设备,可以为核心启用客户模式。VM使用/dev/kvm设备,将其地址空间与内核或任何其他正在运行的VM地址空间无关。

  到了这里,小编分享的KVM虚拟化的的学习总结就结束了,当然,这完全不能代表KVM虚拟化的全部,小编介绍的这些只是在较短的时间之内学习到的知识点。

    >>>>>>点击进入计算专题

赞(11)
踩(0)
分享到:
华为认证网络工程师 HCIE直播课视频教程