Це стосується конкретно розміщених інструментів віртуалізації, таких як сервер VMware / Fusion / Workstation, Virtual Box та Parallels.
Стосовно https://superuser.com/questions/61245 та https://serverfault.com/questions/89269 , я хотів би мати можливість створити віртуальні машини з дуже великим потенційним простором (скажімо, 500 ГБ), але мати цей простір зможе скорочуватися, якщо хост ОС потребує / використовує більше.
Використовуючи VMware, ви можете надати простір VM, але не заздалегідь виділити все це (тому якщо вам ніколи не потрібні 500 ГБ, які ви виділяєте, а використовуєте лише 100 ГБ, решта "призначеного" місця все ще доступна для хост-ОС).
Чи можна зробити це більш-менш зворотно? Я міг би створити десятки віртуальних накопичувачів 10 ГБ або 20 ГБ (не попередньо виділяючи їм простір) та підключивши їх до віртуальних машин у томах LVM, додавши їх у міру необхідності - але це все ще надає проблему, як їх видалити з обсягу LVM якщо / коли хост ОС потребує простір назад.
Або я міг би створити десятки попередньо виділених віртуальних дисків і попередньо підключити їх до своїх віртуальних машин, сподіваючись, що вони не звикнуть, тому хост-операція все ще може працювати. Однак, оскільки LVM не гарантує, куди він буде розміщувати наступний біт даних, які він записує, він може записувати дані в кілька "реальних" томів, запускаючи деякі не заздалегідь виділені віртуальні диски ("справжні" томи) для розширити, але не інші.
Використовуючи цей другий підхід, я гадаю, що можна час від часу переглядати віртуальні диски та вилучати будь-які, які ніколи не зростали, зменшуючи обсяг LVM - але це знову повертається до ручного втручання, коли я хотів би мати менеджер віртуалізації / набір інструментів гіпервізора та / або сторонню утиліту для цього.
Моя початкова мета - зайняти простір, наданий віртуальним машинам, і перетворити його на файлову систему кластерів, використовуючи щось на зразок GlusterFS , Luster , ZFS або Hadoop .