Я довольно давно использовал MDADM + LVM2 на многих приставках. MDADM обслуживает как массивы RAID0, так и RAID1, а LVM2 используется для логических томов поверх MDADM.
Недавно я обнаружил, что LVM2 можно использовать без MDADM (то есть минус один слой, как результат - меньше накладных расходов) как для зеркалирования, так и для удаления.
Однако некоторые ребята утверждают, что ПРОИЗВОДИТЕЛЬНОСТЬ ЧТЕНИЯ на LVM2 для зеркального массива не такая быстрая, как для LVM2 (линейного) поверх MDADM (RAID1), поскольку LVM2 не читает с 2+ устройств за раз, а использует 2-е и более высокие устройства в случай отказа 1-го устройства. MDADM читает одновременно с двух устройств (даже в зеркальном режиме).
Кто мог это подтвердить?
Я повозился с поддержкой зеркала LVM2, и могу сказать: на самом деле он не предназначен для замены RAID1.
Реальное использование зеркалирования LVM2 - это передача данных между томами. Допустим, у вас вышел из строя диск, и вы хотите получить данные из точки A (которая находится в опасности) в точку B (которая безопасна). Смысл функции зеркала LVM2 состоит в том, чтобы автоматически клонировать данные в другие части, позволяя при этом выполнять регулярный ввод-вывод. После того, как "зеркало" захвачено, вы сломаете зеркало и перемонтируете свои данные в новом безопасном месте.
Скорость, с которой он это делает, менее звездная. Мол, хуже чем на 50% медленнее обычного RAID1. Фактически, он настолько медленный, что я могу наблюдать, как два диска, которые являются частью зеркала LVM2, стробируют световой сигнал активности в разное время. Но если вам нужно перемещать данные между физическими местоположениями, он будет выполнять эту работу прозрачно, и это то, что действительно представляет собой LVM - прозрачное управление уровнем хранения, пока файловая система активный. RAID - это больше для предотвращения потери данных из-за единой точки отказа оборудования.
Проблема "накладных расходов" на самом деле не существует. Единственная реальная проблема, с которой вы столкнетесь, это восстановление, и это сообщение само по себе. Восстановить данные из взорванной файловой системы сложно, восстановление из трехуровневой файловой системы (RAID / LVM / Ext4) - это PITA. Поэтому очень важно убедиться, что диски исправны (SMART), массив исправен (mdadm), ваши группы томов исправны (LVM2) и файловая система исправна (fsck). Я пережил это однажды и предпочел бы не делать этого снова.
Готов поспорить, что даже авторы LVM не используют возможности LVM RAID. MD намного более эффективен, зрел и завершен; и имеет больше разработок, посвященных этому.
«Меньше слоев - меньше накладных расходов» часто не соответствует действительности; даже если бы ЦП мог занять немного больше времени, чтобы добраться до диска, это было бы полностью преодолено с помощью любого небольшого улучшения MD, связанного с диском, которых очень много.