"Це залежить."
Якщо ви перебуваєте в середовищі, яким ви керуєте (vmware або kvm чи будь-яке інше), і ви можете приймати власні рішення щодо продуктивності QoS на диску, тоді я рекомендую не використовувати LVM у своїх віртуальних машинах. Це не дає вам великої гнучкості, якої ви не змогли б отримати на рівні гіпервізора.
Пам’ятайте, гіпервізор вже ефективно виконує ці завдання. Якщо ви хочете мати можливість довільно змінити розмір файлових систем (чудова ідея), просто створіть окремий віртуальний диск для кожної файлової системи.
Одне, про що можна подумати, коли йдеш цією дорогою. Вам навіть не обов’язково таким чином ставити розділи на свої віртуальні диски. Наприклад, ви можете створити віртуальний диск для /home
; це /dev/vdc
всередині вашого vm. Створюючи файлову систему, просто зробіть щось на зразок mke2fs -j /dev/vdc
замість вказування розділу.
Це гарна ідея, але ... більшість інструментів (та інших адміністраторів, які йдуть за вами) очікують побачити розділи на кожному диску. Я рекомендую просто поставити один диск на диск і зробити це з ним. Однак це означає ще один крок при зміні розміру файлової системи. І не забудьте правильно вирівняти свої розділи - запуск першого розділу в 1 Мб є хорошим правилом.
Все, що було сказано - Виконання цього на рівні гіпервізора означає, що вам, ймовірно, доведеться перезавантажити VM, щоб змінити розмір розділів. Використання LVM дозволить вам додати віртуальний диск (припускаючи, що комбінація гіпервізора / ОС дозволяє це) та розширити файлову систему без перезавантаження. Це, безумовно, плюс.
Тим часом, якщо ви використовуєте хмарного провайдера, це більш тонко.
Я мало знаю про Azure, GCP або будь-який з менших плеєрів, тому не можу там допомогти.
З AWS ви можете слідувати моїм порадам вище, і ви часто будете просто добре. Ви можете (зараз) збільшувати розмір томів EBS (віртуальних дисків) на ходу та змінювати розміри розділів тощо.
Однак у загальному випадку може бути доцільним розмістити все на одному великому обсязі EBS та використовувати LVM (або, я думаю, звичайні розділи). Amazon дає обмеження IOPS на кожен том. За замовчуванням ця межа масштабується з розміром гучності. наприклад, за gp2
обсяги ви отримуєте 3 IOPS на ГіБ (мінімум 100 IOPS). Дивіться https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html
Для більшості навантажень ви хочете, щоб усі ваші наявні IOPS були доступні для будь-якої файлової системи, залежно від потреби на даний момент. Тому є сенс зробити один великий об'єм EBS, зібрати всі свої IOPS в одне відро і розділити / LVM.
Приклад:
3 диски з незалежними файловими системами / областями для обміну, розміром 100 Гб. Кожен отримує 300 IOPS. Продуктивність обмежена 300 IOPS на кожному диску.
1 диск, розміром 300 Гб. Розділи LVM на диску 100 Гб кожен. Диск отримує 900 IOPS. Будь-який з розділів може використовувати всі 900 IOPS.