深度实践KVM"/>
深度实践KVM
博文为自己在斟酌完技术书籍深度实践KVM后提取出的个人认为重要的术语解析,以及简单的知识总结汇总,介于篇幅,总结的比较精短,知识为于快速记忆,如需详细了解技术细节原理,读者可自行阅读原著。
##前言知识##
1、虚拟化层翻译分为:软件全虚拟化,改造虚拟机系统内核加虚拟化层翻译、即半虚拟化,硬件支持的全虚拟化
2、QEMU:实际是一台硬件模拟器 ,Libvirtd 是一套开源的虚拟化的管理工具,
##CPU、内存虚拟化##
3、SMP、MPP、NUMA都是为了解决多CPU共同工作的问题,SMP即多个CPU通过一个总线访问存储器,MPP可以近似理解成SMP的横向扩展群,NUMA模式则是每个处理器有自己的存储器,每个处理器也可以访问别人的存储器,使用那些内存消耗型的应用时,可以考虑直接将系统的NUMA自动平衡策略关闭4、KSM技术可以合并相同的内存页, 当宿主机内存不足时,临时打开KSM也是一种应急方案
5、virsh vcpuinfo命令查看虚拟机VCPU 和物理CPU的对应关系
6、emulatorpin命令可以查看虚拟机可以使用哪些物理逻辑CPU、CPU绑定实际上是Libvirt通过CGroup实现的
7、VMWare第一层是用的硬件虚拟化技术,第二层完全软件模拟出来的,可做俩层嵌套,KVM是将物理CPU特性传给虚拟机 ,故可嵌套N层
8、KVM的内存气球技术可以在虚拟机之间按照需要调节内存大小,提高内存的利用率(查看当前内存大小:virsh qemu-monitor command),如果有俩种或者几种不同的虚拟机在同一台宿主机上,可以考虑用气球技术,而内存限制技术可以和内存气球技术结合,将内存气球技术限制在一定范围,避免内存被气球无限压缩。
##网络虚拟化##
9、Open vSwitch 主要是解决虚拟化网络的管理问题,是一个由软件实现的虚拟交换机
10、全虚拟化与半虚拟化的根本区别在于客户机是否需要修改才能运行在宿主机中,俩者网卡的区别是全虚拟化网卡是虚拟化层完全模拟出来的网卡、半虚拟化网卡通过驱动对操作系统做了改造
11、vhost-net 技术使虚拟机的网络通信绕过用户空间的虚拟化层,可以直接和内核通信,从而提供虚拟机的网络性能,MacVTap 则是跳过内核的网桥。使用vhost-net的前提是使用Virtio半虚拟化网卡
12、虚拟网络设备TUN/TAP(TAP:模拟第二层以太网设备&
更多推荐
深度实践KVM
发布评论