我相信存在 qcow2 文件,这些文件会占用服务器上少量的 GB(已在物理服务器上使用 df -h 进行验证),但当您登录 virt-manager VM 并发出 df -h 时,它们会留出大量空间。您如何创建这样的文件?物理服务器如何知道,如果/当 VM 增长到最大大小并可能填满物理服务器时,不会出现问题?
truncate 命令不会创建小的 qcow2 文件。虚拟机管理器的 GUI 允许通过 GUI 创建“硬件”。这两种创建 .qcow2 文件的方法都会创建最大大小的文件。
答案1
要为虚拟磁盘大小为 100MB 的 qcow2 映像执行以下操作:
qemu-img create -f qcow2 foobar.qcow2 100M
创建的foobar.qcow2大约为200KB。
您可以使用它轻松创建一个非常大的虚拟磁盘,它只会占用主机文件系统上非常小的空间,例如 100TB 虚拟磁盘在主机上仅占用约 2MB 的空间,但当客户机使用该磁盘时,文件将在主机上增长。这最终将填满主机文件系统并阻止客户机进一步写入任何尚未分配的位置。为客户机分配更多主机上真正可用的资源称为精简配置, 看https://en.wikipedia.org/wiki/Thin_provisioning了解更多信息。
当磁盘进行精简配置时,避免问题的最简单方法是监视主机系统的磁盘使用情况(并向管理员发送自动警报)并在主机系统文件系统填满之前添加更多磁盘空间。