Я считаю, что есть файлы qcow2, которые замещают небольшое количество гигабайт на сервере (что проверено с помощью df -h на физическом сервере), но при этом оставляют много места, когда вы входите в виртуальную машину virt-manager и выдает df - час Как создать такой файл? Как физический сервер узнает, что проблем не возникнет, если / когда виртуальные машины вырастут до максимального размера и потенциально заполнят физический сервер?
Команда truncate не создает небольших файлов qcow2. Графический интерфейс Virtual Machine Manager позволяет создавать «оборудование» через графический интерфейс. Оба эти метода создания файлов .qcow2 создают файлы максимального размера.
Чтобы создать образ qcow2 для виртуального диска размером 100 МБ, выполните:
qemu-img create -f qcow2 foobar.qcow2 100M
Созданный файл foobar.qcow2 будет иметь размер около 200 КБ.
С его помощью вы можете легко создать очень большой виртуальный диск, который займет очень мало места в файловой системе хоста, например Виртуальный диск емкостью 100 ТБ займет всего около 2 МБ на хосте, но когда диск используется в гостевой системе, размер файла на хосте будет увеличиваться. Это в конечном итоге заполнит файловую систему хоста и предотвратит дальнейшую запись гостем в любое место, которое еще не было выделено. Выделение дополнительных ресурсов для гостя, которые действительно доступны на хосте, называется тонкое обеспечение, видеть https://en.wikipedia.org/wiki/Thin_provisioning для получения дополнительной информации.
Самый простой способ избежать проблем при тонком выделении диска - это отслеживать использование диска хост-системой (с автоматическими предупреждениями, отправляемыми администраторам) и добавлять дополнительное дисковое пространство до того, как файловая система хост-системы заполнится.