Linux LVM зеркало против MD зеркало


11

Думаю, я помню, как несколько лет назад делал зеркала с LVM, и я не помню эту «бревно». Или, может быть, я сделал зеркало с mdadm и положил сверху LVM. Это должно быть это.

  1. Для чего нужен журнал LVM, если это просто зеркало? Что там хранится? Какова его цель? Использование "--mirrorlog core" плохо? Что за недостаток? Я не хочу иметь другой раздел для журналов, если мне не нужно.

  2. Любые рекомендации по использованию любой технологии? Даже если я сделаю зеркало с mdadm, я буду использовать LVM поверх этого. Итак, в таком случае, может быть, лучше, чтобы вся установка была построена с помощью LVM ...? Будет ли это больше бить по производительности или меньше?

Диски предназначены для хранения Xen DOMU "Диски".

Извините за сложный, не суть вопрос "вопрос".

Идеи, предложения и ссылки приветствуются. Благодарность!


Кажется, что md лучше работает для зеркальных операций по сравнению с lvm. См. Serverfault.com/questions/80134/linux-md-vs-lvm-performance
Zoredache

1
Зеркальное отображение LVM предназначалось для другой цели. Хотя вы можете использовать его для «зеркалирования», как это делает MD, он действительно используется для клонирования томов. См. Serverfault.com/questions/97845/lvm-mirroring-vs-raid1
Эвери Пейн

1
Если он предназначен для клонирования, то зачем ему три тома?
d -_- b

Ответы:


9

Лично я всегда хожу MD + LVM. Это быстрее (MD может выполнять параллельное чтение в RAID1) и требует только 2 дисков (если вы не хотите перестраивать зеркало после каждой перезагрузки), а MD предназначен только для RAID, и он делает это очень хорошо. Это также более гибкий.

Также я был сожжен LVM. В одном случае это было чередование LVM в HP-UX (не должно происходить с LVM2 в Linux), и я не мог расширить LV, потому что расширение должно было иметь точно такое же число полос. Это кажется разумным, но иногда ...

В другой раз это было с зеркалированием (LVM2 в Linux на этот раз), но сейчас я не могу вспомнить, отказывался ли LVM сделать снимок зеркального LV или расширить его, фактически сводя на нет преимущество, связанное с LVM в первую очередь (мы сделали это). в конце концов, но задействовал lvconvert туда-сюда).


Благодарность! Я думаю, что я пойду с LVM поверх MD. Похоже, что есть некоторые проблемы с автоопределением MD. ( raid.wiki.kernel.org/index.php/RAID_Boot ) Я как бы хотел отразить всю свою систему (swap, boot, /, var, home, usr). Поэтому мне придется заняться чем-то другим, кроме автоопределения.
d -_- b

Да, автоопределение - это хорошая идея в принципе, но она вызывает все виды головной боли. У меня есть настройка с iSCSI + multiath + MD + LVM ... и автоопределение ... интересно, но бесполезно в этом случае.
Дэн Андреатта

4

Когда зеркальная пара внезапно закрывается, в любой системе могут быть некоторые блоки, которые были записаны на одно устройство, но еще не записаны на другое. Возможно, с переупорядочением путей ввода-вывода есть некоторые блоки, которые были записаны в A, но не в B, а некоторые - в B, но еще не в A.

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

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

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

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

Насколько я понимаю, цель зеркального журнала LVM - отслеживать блоки, которые были записаны на одно устройство, но еще не записаны на другое.


2

это две разные концепции:

  • LVM, как следует из названия, для управления громкостью. Думайте об этом как о механизме объединения нескольких томов в один (да, вы можете сказать, что это похоже на raid0), изменении их размера, изменении размера в реальном времени, создании снимков.
  • MD для управления RAID. Добавьте несколько устройств в одно метаустройство, сделайте это метаустройство высокодоступным с помощью raid1, 5, 10 и т. Д.

LVM работает с устройствами хранения данных, будь то метаустройства или устройства, представленные контроллером raid, или просто обычные диски.

MD работает с дисками (да, вы также можете использовать диски, представленные контроллером raid, но какой в ​​этом смысл? ..

LVM не для того, чтобы сделать ваше хранилище высокодоступным. И также MD не для управления громкостью ...

Надеюсь это поможет :)


1
Я понимаю, что они есть. Однако, если вы читаете страницу руководства для lvcreate, он говорит, что может создавать зеркала. Я полагаю, это немного игрушка на данный момент?
d -_- b

1
имхо да. Я не вижу никакой пользы для этого, по крайней мере, на данный момент. это не только зеркало на уровне тома (а не устройства), но и немного «интересно», как оно создается, например, если вам нужно двухстороннее зеркало (как в оригинале + копия), вам нужно иметь 3 тома - по одному на каждый сторона зеркала + объем журнала. но опять же - имхо. :)
Ритис

1

LVM пришел из других типов систем UNIX. Я использовал его на HPUX, у которого не было MD-слоя Linux, когда я работал над ним 10 лет назад, но сейчас я не уверен. При таких обстоятельствах зеркалирование LVM становится полезным в ситуации, когда аппаратный RAID недоступен.


Мне показалось странным, что зеркалу LVM нужно больше одного тома. Что это за зеркало?
d -_- б

1
@ для третьего тома используется для хранения журнала опережающей записи для зеркала, в основном для отслеживания того, что необходимо повторно синхронизировать после внезапной остановки. На MD это обычно хранится в зарезервированной части двух дисков.
пул

1

с зеркальным зеркалом -mirrorlog и параметром -allocwhere с двумя дисками вы получаете два зеркальных журнала 4M, по одному на каждом диске. Меня раздражает, что я должен отвергнуть политику в отношении того, что кажется наиболее распространенной ситуацией, ну да ладно.

LVM в Linux не имеет отношения к HP-UX или AIX, просто имеет те же команды пользовательского пространства. LVM в Linux внутренне использует систему DM и, следовательно, использует тот же код, что и MD. На данный момент я не вижу преимущества LVM перед MD. Для разделов, которые вы хотите создать быстро и не заботиться о резервном копировании (например, обмениваться разделами для гостевых виртуальных машин), LVM дает вам возможность выбрать, хотите ли вы их зеркально отразить или нет, или лучше ли выполнять разборку.

И гораздо проще добавить диск в LVM, чем MD.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.