Как лучше всего добавлять диски в LVM?

21

В соответствии с man-страницами Linux вы можете добавлять как сырые диски, так и разделы в группу томов.

В другой документации (RedHat, CentOS или openSUSE) все примеры относятся к добавлению разделов в VG вместо необработанных дисков. Что такое обычная (лучшая) практика?

МакГайвер
источник

Ответы:

19

RHEL6 LVM Руководство администратора

В соответствии с Руководством по администрированию логических томов RHEL 6 рекомендуется, чтобы, если вы собираетесь использовать весь диск в качестве физического тома в группе томов LVM, вам все равно пришлось его разбивать:

отрывок из руководства «Руководство администратора LVM по администрированию логических томов LVM»

2.1.2. Несколько разделов на диске

LVM позволяет создавать физические тома из разделов диска. Как правило, рекомендуется создать один раздел, охватывающий весь диск, чтобы пометить его как физический том LVM по следующим причинам:

Административное удобство

Проще отслеживать аппаратное обеспечение в системе, если каждый реальный диск появляется только один раз. Это становится особенно актуальным, если диск выходит из строя. Кроме того, несколько физических томов на одном диске могут вызвать предупреждение ядра о неизвестных типах разделов при загрузке.

LVM Howto

Раздел 11.1. Инициализация дисков или разделов диска LVM Howto гласит следующее:

выдержка из LVM Howto

Для целых дисков:

Запустите pvcreate на диске:

# pvcreate /dev/hdb

Это создает дескриптор группы томов в начале диска.

Не рекомендуется

Использование всего диска в качестве PV (в отличие от раздела, охватывающего весь диск) не рекомендуется из-за проблем управления, которые он может создать. Любая другая ОС, которая просматривает диск, не распознает метаданные LVM и не отображает диск как свободный, поэтому, скорее всего, он будет перезаписан. Сам LVM будет хорошо работать с целыми дисками.

Если вы получаете сообщение об ошибке, что LVM не может инициализировать диск с таблицей разделов, сначала убедитесь, что диск, на котором вы работаете, является правильным. Если вы уверены, что это так, выполните следующее:

ОПАСНАЯ

Следующие команды уничтожат таблицу разделов на диске, с которым вы работаете. Будьте уверены, что это правильный диск.

# dd if=/dev/zero of=/dev/diskname bs=1k count=1
# blockdev --rereadpt /dev/diskname

Выводы

Это основные источники, которым я бы доверял при определении того, следует ли форматировать отдельный раздел на жестком диске перед добавлением его в качестве физического тома или нет. Как указали другие ответы (и комментарии), вы не ошиблись бы, просто добавив весь диск без раздела.

Мне это нравится, когда я еду в машине с пристегнутым ремнем безопасности. Если вы никогда не попадете в аварию, то ремень безопасности не принес никакой пользы, но если я попаду в аварию, я очень рад, что на мне его надели.

Продолжение № 1 (To @ Joel's comments)

Я думал, что вышеупомянутые 2 руководства были 2 довольно вескими причинами. Они оба официальные гиды, один из RH, другой - Howto, составленный командой LVM.

Вот еще одна причина. Без разделения жесткого диска на HDD явно не устанавливается идентификатор, чтобы четко определить, как он используется.

 fdisk -l
 ...
/dev/sda6       318253056   956291071   319019008   8e  Linux LVM

Как администратор систем, для меня и других становится гораздо более очевидным намерение использования данного диска по сравнению с 8e.

Я ценю то, что вы говорите @Joel, я тоже работал в компании из списка Fortune 500, где у нас были сотни развертываний Linux как в настольных / серверных физических / виртуальных развертываниях, так и в развертываниях больших хранилищ, поэтому я понимаю, что вы говоря.

SLM
источник
Только потому, что Red Hat говорит, что это не так. Я до сих пор не услышал реальную причину, по которой вы бы разбили диск, и я могу думать только о причинах, по которым это невозможно. Также «проще отслеживать аппаратное обеспечение в системе, если каждый реальный диск появляется только один раз». Это действительно проблема? Он появится fdisk -lодин раз, /sys/blockодин раз и один раз в вашем биосе. Где это должно быть продублировано? (продолжение)
Братчли
Я говорю из личного опыта, нам просто нужно было добавить места во многие тома. Они были разбиты на разделы, поэтому мы столкнулись с множеством проблем, когда ядро ​​не отпускало таблицу разделов. Таким образом, мы были вынуждены выполнить переразметку, а затем перезагрузку, что привело к простою службы без веской причины. что касается «Любая другая ОС, которая просматривает диск, не распознает метаданные LVM и не отображает диск как свободный, так что, скорее всего, он будет перезаписан», это просто не соответствует действительности. В Windows он будет отображаться как неиспользуемый диск (но администратор знает лучше), о какой ОС они говорят?
Братчли
До сих пор никто, кто говорит, что разделение диска предпочтительнее, на самом деле не дает веских причин, почему они поощряют людей делать что-то, что наверняка укусит их в кейстер в конечном итоге в ситуации предприятия (вам в конечном итоге понадобится больше места) , Все, что мы получаем, - это расплывчатые откровенные ответы о том, как он будет отображаться нераспределенным в других ОС (как будто это так или иначе, Windows тоже не распознает ваш ext3 в разделе), или необоснованные заявления о том, что он появляется более одного раза. или как-то упростить отслеживание хранилища.
Братчли
Спасибо, ребята :) Это обсуждение было очень полезно для меня.
МакГайвер
2
@Joel - Как и я. Я ценю обсуждение. Хорошо, что мы все можем поделиться своим практическим опытом и попытаться дать лучшее руководство по этой конкретной теме, чем то, что в настоящее время доступно на веб-сайтах. Как минимум, мы, по крайней мере, собираем много фрагментированной документации в одном месте. 8-).
SLM
10

Желательно иметь некоторые общепризнанные дескрипторы (метаданные), и MBR вполне выступает в качестве такого дескриптора. Даже GPT использует старую таблицу разделов на основе MBR, чтобы указать ее наличие.

На самом деле вы теряете некоторое дисковое пространство, но это, тем не менее, незначительное преимущество понимания того, что находится на диске (и где), самоочевидно.

poige
источник
1
Вы можете даже не потерять диск на диске. Проверьте pvdisplay, (PV SIZE: не используется X MiB), если X больше 1MiB, вы также можете разделить, не теряя больше.
frostschutz
1
@frostschutz Хорошо внимательный, но играющий в "умницу": пространство, "доступное для траты" - это не "размер dev по модулю PE», а "(размер dev минус пространство метаданных (384K)) по модулю PE". Разве это приводит к более или менее зависит, конечно.
Хауке Лагинг
Также у LVM есть дескриптор. Зачем сначала создавать FAT-таблицу, а не дескриптор LVM. LVM хранит метаданные во втором секторе. Одна вещь, о которой я могу подумать, чтобы сначала создать жир, - это аварийное восстановление или для некоторых начинающих администраторов linux (администрирование дисков).
МакГайвер
HP-UX также использует LVM ... на этой платформе обычная практика добавлять необработанные диски и позволять LVM делать свое дело на дисках. LVM2.x
MacGyver
1
@ user39597, ты все испортил. FAT расшифровывается как File Allocation Table, это что-то вроде MS-DOS. Таблица разделов MBR де-факто является стандартной, многие различные инструменты не знают, что LVM знает, что диск разделен и занят - это мера предосторожности.
Пойдж
4

Создание физических томов в разделах, занимающих 100% диска, почти никогда не является правильным решением. Я говорю «почти» только потому, что я придерживаюсь позиции, что просто потому, что я не могу придумать причину сделать что-то, это не значит, что нет причины делать это. Тем не менее, я не могу придумать единственную причину для размещения разделов на диске на 100% пространства, если это будет LVM.

Вы не получаете никакой заметной выгоды в обмен на получение некоторой жесткости разделения. Если это физические тома с поддержкой SAN, и вы делаете это, есть только два способа расширить пространство хранения в группе томов:

  1. Представьте новый LUN большего размера, добавьте его в группу томов, отключите LUN, который вы необъяснимым образом разбили на разделы, удалите его из группы томов и попросите людей SAN отменить его презентацию. Это может работать и может быть выполнено в режиме онлайн (с падением производительности и при условии, что в вашем пуле хранения на стороне SAN достаточно места SAN для одновременного хранения этих двух LUN), но это выполнимо.
  2. Единственный другой способ - вернуться к работе с разделами, что является одной из причин, по которым людям нравятся хорошо разработанные схемы управления томами (например, btrfs, lvm, zfs и т. Д.). Вы можете редактировать таблицу разделов физического тома и надеяться, partprobeчто вы сможете прочитать новые размеры, но это работает только примерно 1 раз из 2, исходя из моего личного опыта, и это требует от вас размонтировать файловую систему (то есть вынуждает вас отключаться от сети по другой причине) как у менеджеров громкости).

Если вы делаете целый диск, администратор SAN может расширить LUN для вас, вы повторно сканируете шину SCSI, он выбирает новый размер LUN, а затем вы делаете a pvresizeдля расширения физического тома. Все без отключения файловых систем.

Отключая бит MBR, вы обычно не берете PV из одной системы и не представляете их другой в корпоративной среде. Даже если вы это сделали, если это LVM, вы захотите, чтобы ОС, в которой вы собираетесь представлять LUN, поддерживала LVM. Иначе какой смысл представлять это им? Если это произойдет, вы увидите все данные физического тома, информацию о группе томов и логические тома (при условии, что это единственный PV в группе томов). Таким образом, он самодокументирует таким образом.

По сути: разделение целого диска на 100% похоже на требование, чтобы официант, принесший вам яблочный пирог, тоже принес вам нож. Когда он это делает, вы бросаете нож в сторону и просто прячете свое лицо в пирог. Смысл: не имеет смысла настаивать на том, чтобы инструмент разбивал что-то на более мелкие части, если вы все равно собираетесь использовать все это за один раз.

Bratchley
источник
2
Теоретически вы не ошибаетесь, на практике вы видите повседневные проблемы, такие как ОС и установщики (даже Linux), предлагающие отформатировать этот предположительно бесплатный диск - потому что они не распознали LVM. В то же время нет никаких недостатков (с точки зрения производительности) в использовании разделов. Таким образом, в среде домашнего пользователя, настольного компьютера, мультисистемной среды безопаснее придерживаться разделов.
frostschutz
Я не видел проблем с установщиками самостоятельно. Предполагается, что ядро ​​должно делать то же самое, что и pvscanпри загрузке, поэтому ядро ​​на установочном диске должно было сканировать все блочные устройства в поисках головок LVM. Я бы, вероятно, подал сообщение об ошибке тому, кто вендор объясняет, что его установщик - fubar'd. Для домашних установок проблема та же, даже если корневая файловая система охватывает два диска, ваш основной диск будет разделен на / boot, и когда ядро ​​загрузится, оно выполнит сканирование тома. Вот так вы даже можете загрузиться в LVM.
Братчли
но с другой стороны, нет никакой пользы от разделов вне BIOS и поддержки grub (отсюда и / boot). Даже для домашних пользователей. Там также очень мало пользы (ваш HDD не станет больше), просто хорошая привычка, чтобы войти.
Братчли
Спасибо, ребята :) Это обсуждение было очень полезно для меня.
МакГайвер
0

По моему опыту, использование раздела будет хорошо, если вы тестируете или небольшую среду, где диск / хранилище не доступны. Это хорошо для школы или работы в вашем гараже. В реальном мире с виртуальным сервером, где вы можете расширять диск по требованию, лучше, если вы позволите LVM управлять сырым / целым диском вместо разбиения. Это будет легко и гибко управлять без перезагрузки вашего сервера. Вы знаете, сколько времени это сэкономит? Умножьте для всех серверов, которые вам могут понадобиться для управления! Несколько раз у меня возникали проблемы с тем, что из-за разбиения / фрагментов вам необходимо перезагрузить сервер, так как ядро ​​может не распознать новую таблицу. При добавлении необработанного диска / виртуального диска в LVM и при необходимости расширения файловой системы LVM отлично подходит для необработанного диска. Запустив простую команду, такую ​​как «echo 1> / sys / block / XXX / device / rescan ”, где XXX - это ваш диск (sdb, sdc, sdd и т. д.), будет повторно сканировать диск на дополнительное место без перезагрузки, и бум! Вы сможете расширить свою файловую систему на лету. Вам потребуется буквально 5 минут, чтобы расширить диск без перезагрузки сервера Linux. С разделенным диском этот процесс усложняется

user348093
источник
1
Ваш ответ, кажется, больше концентрируется на преимуществах использования виртуальных машин, а не на полном выделении дисков LVM.
Роайма
1
@roaima: ОК, мои глаза не работают. Где этот ответ говорит о виртуальных машинах?
G-Man говорит: «Восстанови Монику»
1
@ G-Man все дело в добавлении хранилища в виртуальную машину, а затем в возможности разделить выделенный диск с помощью LVM в самой виртуальной машине без необходимости перезагрузки.
Роайма