文档详情

KVM虚拟化CU技术总结.pdf

发布:2018-10-14约7.01千字共13页下载文档
文本预览下载声明
KVM 虚拟化CPU 技术总结 一 NUMA 技术介绍 二 host-passthrough 技术及应用场景 三 CPU 热添加 四 nested 虚拟机嵌套 (kvm onkvm) NUMA 是一种解决多CPU 共同工作的技术方案,我们先回顾下多CPU 共同工作的技 术架构历史。多CPU 共同工作主要有三种架构,分别是SMPMPPNUMA 架构。SMPMPP NUMA 都是为了解决多CPU 共同工作的问题。 早期的时候,每台服务器都是单CPU,随着技术发展,出现了多CPU 共同工作的需求, 最早的多CPU 技术是SMP。 SMP 多个CPU 通过一个总线访问存储器,因此SMP 系统有时也被称为一致存储器访问 (UMA)结构体系,一致性意指无论在什么时候,处理器只能为内存的每个数据保持或共 享唯一一个数值。 SMP 的缺点是可伸缩性有限,因为在存储器接口达到饱和的时候,增加处理器并不能 获得更高的性能,因此SMP 方式支持的CPU 个数有限。 处理器 处理器 处理器 处理器 缓存 缓存 缓存 缓存 内 内 存 存 MPP MPP 模式则是一种分布式存储器模式,能够将更多的处理器纳入一个系统的存储器。 一个分布式存储器模式具有多个节点,每个节点都有自己的存储器,可以配置为SMP 模式, 也可以配置为非SMP 模式。单个的节点相互连接起来就形成了一个总系统。MPP 可以近似 理解成一个SMP 的横向扩展集群,MPP 一般要依靠软件实现。 NUMA 每个处理器有自己的存储器,每个处理器也可以访问别的处理器的存储器。 多CPU 的NUMA 架构 处理器 处理器 处理器 处理器 缓存 缓存 缓存 缓存 内 内 内 内 存 存 存 存 多核CPU 的NUMA 架构 NUMA-Q 是IBM 最早将NUMA 技术应用到i386 上的商业方案,可以支持更多的x86CPU 一起 工作。 KVM 虚拟机NUMA 调优 因为NUMA 架构每个处理器都可以访问自己和别的处理器的存储器,访问自己的存储 器要比访问别的存储器的快很多,NUMA 调优的目标就是让处理器尽量的访问自己的存储 器,以提高处理速度。 通过numactl --hardware 可以看到当前CPU 硬件的情况 libvirt 的numa 管理 使用numastat 命令可以查看每个节点的内存统计 使用numatune命令可以查看或者修改虚拟机的numa 配置 linux 的numu 平衡策略 linux 系统默认是自动numu 平衡策略,如果要关闭Linux 系统的自动平衡,使用如下命 令 # echo0/proc/sys/kernel/numa_balancing 如果要开启,使用如下命令 echo 1/proc/sys/kernel/numa_balancing numa 工作方式可以是strict,指定cpu,或者auto 使用系统的numad 服务 numatune memorymode strictplacement auto/ /numatune numatune memorymode strictnodeset 0,2-3/ /numatune virshnumatunerhel7--node
显示全部
相似文档