zoukankan      html  css  js  c++  java
  • qemu-kvm: unable to map backing store for guest RAM: Cannot allocate memory

    当给 KVM 虚拟机设置 hugepage 时,需要在虚拟机的配置文件里加上下面一段:

    <memoryBacking>
        <hugepages/>
    </memoryBacking>

    但是,加上这么一段之后,再次启动虚拟机,可能起不来,service libvirtd restart 可能会得到如标题的错误。

    这个问题的原因可能是:

    1. host 没有设置足够多的 hugepage

    2. guest 设置的内存大小超出了 host 的 hugepage

    解决办法:

    1. 检查 host hugepage 设置

    cat /proc/meminfo |grep -i huge

    Hugepagesize * HugePages_Free 就是 guest 可以分配的内存。

    2. 检查 guest 内存配置

    用下面的命令查看虚拟机的配置,<kvm> 是虚拟机的名字

    virsh edit <kvm>

    如下,memory 是 16G,那么 host 的 hugepage 必须设置大于16G,否则就会出现标题的错误。

      <memory unit='KiB'>16777216</memory>
      <currentMemory unit='KiB'>16777216</currentMemory>
      <memoryBacking>
          <hugepages/>
      </memoryBacking>
  • 相关阅读:
    写优先
    生产者消费者信号量的个人理解
    向上过滤
    操作系统之进程调度算法笔记
    idea学习
    计算机网络之网络层
    rest-framework routers
    rest framework ViewSet
    rest framework Genericview
    rest framework Views
  • 原文地址:https://www.cnblogs.com/weiweifeng/p/8194356.html
Copyright © 2011-2022 走看看