• openstack-KVM-vCPU


     

    一、KVM基础功能

      (1)支持

        硬件支持 VT-x VT-d

        系统支持 kernel > 3.5

      (2)计算机系统的子系统

        CPU 处理器

        Memory 内存

        Storage 存储

        Network 网络

        Display 显示

    二、 CPU

      SMP(Symmetrical Multi-Processing),对称多处理技术,是指在一个计算机上汇集了一组处理器(多CPU),各CPU之间共享内存子系统以及总线结构。

      SMT(Simultaneous multithreading),同时多线程。SMT 可通过复制处理器上的结构状态,让同一个处理器上的多个线程同步执行并共享处理器的执行资源。

      CMP(Chip multiprocessors),即单芯片多处理器,也指多核心。其思想是将大规模并行处理器中的SMP(对称多处理器)集成到同一芯片内,各个处理器并行执行不同的进程。与CMP比较, SMT处理器结构的灵活性比较突出。

      NUMA (非统一内存访问),是一种用于多处理器的电脑记忆体设计,内存访问时间取决于处理器的内存位置。 在NUMA下,处理器访问它自己的本地存储器的速度比非本地存储器(存储器的地方到另一个处理器之间共享的处理器或存储器)快一些。

      NUMA架构在逻辑上遵循对称多处理(SMP)架构。 

    1、vCPU (virtual CPU)

      (1)进程模式

        用户模式 (User Mode): 主要处理I/O的模拟和管理,由QEMU实现。

        内核模式 (Kernel Mode) :主要处理高性能和高安全的指令。

        客户模式 (Guest Mode) :主要执行Guest的大部分命令。

    图1  vCPU在KVM中的三种执行模式

      (2)kvm

    图2 KVM系统的分层架构

     

    2、SMP

      SMP(Symmetric Multi-Processor)对称多处理器。是指在一个计算机上汇集了一组处理器(多CPU),各CPU之间共享内存子系统以及总线结构。

    3、CPU 超配

      虚拟机的 vCPU总数可以超过物理CPU数量,这个叫 CPU over-commit(超配)。KVM允许 over-commit,这个特性使得虚拟机能够充分利用宿主机的 CPU 资源,但前提是在同一时刻,不是所有的虚拟机都满负荷运行。

    4、CPU 模型

      (1)CPU模型

        qemu64

        qemu32

        直接传递

        其它POWER

      (2)VMM自定义策略的CPU类型,可以提供一些高级的过滤功能,同一组硬件平台上的动态迁移更加平滑和安全。

        CPU类型存放位置及定义格式:

        more /usr/share/libvirt/cpu_map.xml | grep "model name"

    <domain type='kvm'>
        <cpu mode='custom' match='exact'>
            <model fallback='allow'>Westmere</model>
        </cpu>
    </domain>    

    (3)使用物理机CPU类型,定义如下:

    <domain type='kvm'>
        <cpu mode='host-passthrough'>
        </cpu>
    </domain>

      (4)使用物理机CPU类型特点:

        物理CPU特性供虚拟机使用,嵌套

        公有云,客户看到物理CPU,体验会比较好

        虚拟机的迁移会有问题

          (5)使用物理机CPU的虚拟机vCPU参数配置文件:

                 文件所在位置:/etc/libvirt/qemu/

                 打开文件:virsh edit centos-2-1(虚拟机名)

    <vcpu placement='static'>16</vcpu>
        <cpu mode='host-passthrough' check='partial'>
        <topology sockets='2' cores='4' threads='2'/>
    </cpu>

                 注:CPU插槽为2,内核为4,超线程为2。

          (6)使用coreduo CPU的虚拟机vCPU参数配置文件:

    <vcpu placement='static'>4</vcpu>
        <cpu mode='custom' match='exact' check='partial'>
        <model fallback='allow'>coreduo</model>
        <topology sockets='1' cores='2' threads='2'/>
    </cpu>

      注:CPU插槽为2,内核为4,超线程为2。

    5、进程的处理器亲和性和vCPU绑定

      进程的处理器亲和性(Processor Affinity),即CPU的绑定设置,是指将进程绑定到特定的一个或多个CPU上去执行,而不允许将进程调度到其他的CPU上。

      (1)开机进入grub时,隔离1,2号CPU:

        grub add

        isolcpus=1,2

          (2)查处理器编号对应的进程总数:

        ps -eLo psr | grep 0 | wc -l

        ps -eLo psr | grep 1 | wc -l

        ps -eLo psr | grep 2 | wc -l

        ps -eLo psr | grep 3 | wc –l

      (3)查CPU编号对应的进程等信息:

        ps -eLo ruser,pid,ppid,lwp,psr,args | awk '{if($5==1) print $0}'

        ps -eLo ruser,pid,ppid,lwp,psr,args | awk '{if($5==2) print $0}'

                 参数:

          migration:用于进程在没CPU间迁移

          kworker:用于处理workqueues

          ksoftirqd:用于调度CPU软中断的进程

          -e:显示所有进程

          -L:显示LWP(light weight process)

          -o:自定义输出

          psr:处理器编号

          lwp:线程ID

          ruser:运行进程的用户

          pid:进程ID

          ppid:父进程ID

          args:运行的命令和参数

      (4)字符安装虚拟机并绑定:

        virt-install --name=c1 --disk path=/kvm/c1.img --memory=1024 --vcpus=2 --graphics spice --location=/kvm/CentOS.iso

        ps -eLo ruser,pid,ppid,lwp,psr,args | grep qemu | grep -v grep

            处理器和vCPU绑定:

          taskset --help

          taskset -pc 1 5339

            处理器和vCPU绑定:

          virsh vcpuinfo centos7.0

          virsh vcpupin centos7.0 0 20

          virsh vcpupin centos7.0 1 21

          virsh vcpupin centos7.0 2 22

          virsh vcpupin centos7.0 3 23

  • 相关阅读:
    Python网络爬虫之图片懒加载技术、selenium和PhantomJS
    验证码处理
    Python网络爬虫之三种数据解析方式
    Python网络爬虫之requests模块
    Python网络爬虫http和https协议
    Python网络爬虫相关基础概念
    jupyter环境安装
    AUTOTRACE Statistics常用列解释
    oracle 权限管理
    streams 日差管理及监控
  • 原文地址:https://www.cnblogs.com/chenli90/p/10348059.html
Copyright © 2020-2023  润新知