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>
  • 相关阅读:
    JSP介绍
    Cookie和Session的原理及异同
    过滤器的使用
    JAVA 集合
    **JVM** 类加载机制
    *JAVA IO/NIO*
    jvm
    ioc
    spring问题总结
    aop详解
  • 原文地址:https://www.cnblogs.com/weiweifeng/p/8194356.html
Copyright © 2011-2022 走看看