AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 4839
Accepted
WaldenL
WaldenL
Asked: 2009-05-06 08:55:52 +0800 CST2009-05-06 08:55:52 +0800 CST 2009-05-06 08:55:52 +0800 CST

虚拟机中的虚拟内存(VM 中的交换文件?)

  • 772

关于在虚拟机内部允许虚拟内存有什么看法?

例如,一台具有 8 Gig 内存的主机,我可以运行 4 个 VM,每个 VM 具有 2 Gig(大约)并且不会有主机交换。但是,在每个 VM 中,我可以有一个 2Gig 的页面文件,因此虚拟服务器有 4Gig 的可用内存,2 个物理 2 个虚拟。

或者...我可以给每个 VM 4 Gig 的“内存”,让主机使用 8Gig 的实际内存和 8G 的虚拟内存,并且每个 VM 中没有页面文件。每个 VM 仍将具有“4Gig”,但分页将发生在主机上。

我的温暖模糊部分说在每个客人中设置分页就像你在真正的服务器上一样,你很好。但是我的分析方面看到了过度使用主机内存和在 VM 中没有分页的两个主要优点。首先,虚拟内存的 IO 然后由更接近裸机的主机操作系统处理,因此应该更快。其次,只有在主机没有可用内存时才需要分页。如果客人想要 4Gig,但其他客人没有使用他们的内存,则不需要分页。

想法?

virtualization memory pagefile
  • 4 4 个回答
  • 6083 Views

4 个回答

  • Voted
  1. Best Answer
    Dave Cheney
    2009-05-06T09:01:13+08:002009-05-06T09:01:13+08:00

    我不是虚拟化专家(事实上,我认为大多数情况下它是错误的工具),但从我所读到的内容来看,您的客户操作系统不应该被允许交换。防止交换的主要原因是它代表了一种猜测操作系统占用主机大部分 IO 带宽的方式。

    此外,您不想向您的猜测操作系统假装主机拥有比它拥有的更多的物理内存,因为这会导致主机大量交换,但是在猜测操作系统内部调试性能问题将非常困难,因为从他们的角度来看看来它们没有交换,来宾中的任何操作系统级别工具都不会显示它。

    甚至可能使用 Xen 和 VmWare 之类的工具,由于使用了 baloon 内存驱动程序,您无法在主机操作系统上过度使用内存。

    • 6
  2. Mihai Limbăşan
    2009-05-06T09:00:25+08:002009-05-06T09:00:25+08:00

    这在很大程度上取决于主机操作系统上过度使用内存的后果。例如,如果我让 Linux 内存不足杀手杀死我的虚拟机,我会更加恼火。我倾向于为每个客户操作系统留出一个较小的、单独的、预先分配的、独立于快照的(如果适用于您的 VM 解决方案)虚拟磁盘,确保托管该磁盘映像的文件没有碎片和/或在快速驱动器上,并配置来宾交换空间驻留在该虚拟磁盘上。今天的 Hypervisor 内存管理已经足够好,不会感觉到 OOM 主机交换和 OOM 来宾交换之间的区别,而且我可以独立微调来宾行为。两全其美。

    • 4
  3. poige
    2019-11-16T23:58:05+08:002019-11-16T23:58:05+08:00

    VM 中的自己交换是关于更好地隔离资源。这样的虚拟机将无法满足其 RAM 需求来拖累主机——它已经受到限制。而且,如果您将交换放在 VM 系统以外的磁盘上,您甚至可以为其设置不安全的缓存策略。

    但是“外部”交换是关于更好地利用资源,而不是。

    就是这样:隔离与利用——你的选择。

    • 2
  4. Adam Gibbins
    2009-05-06T09:16:59+08:002009-05-06T09:16:59+08:00

    由于 IO 问题,我不会给您的 Guest 虚拟内存。我也不会给您的主机虚拟内存和来宾太多的物理内存,因为来宾实际上不会意识到它使用的是虚拟内存而不是物理内存。

    除了购买更多内存之外,这不会给您留下任何解决方案。您真的无法获得更多内存的替代方案。它是如此便宜,如果您的服务器可以支持更多,我会得到更多。

    • 1

相关问题

  • 您将如何监控 VM 服务器的剩余驱动器空间?

  • VMware 中的 SQL 服务器

  • 笔记本电脑 - RAM 与磁盘的性能

  • 有什么软件可以模拟局域网?

  • 为什么 Virtual PC 与 Windows 7 捆绑在一起很重要?[关闭]

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    Windows 中执行反向 DNS 查找的命令行实用程序是什么?

    • 14 个回答
  • Marko Smith

    如何检查 Windows 机器上的端口是否被阻塞?

    • 4 个回答
  • Marko Smith

    我应该打开哪个端口以允许远程桌面?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    kch 如何更改我的私钥密码? 2009-08-06 21:37:57 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve