
Мне нужно перенастроить RAID-массив, и я столкнулся с дисками разного размера. Я хотел бы сделать зеркало RAID 1 с 2 дисками по 5 ТБ и 1 диском по 8 ТБ. Я не уверен, как лучше это сделать.
Пока что мне в голову пришли два варианта...
Один, LVM 2x 5 ТБ и добавить его в mdadm raid 1 с другим диском 8 ТБ
Во-вторых, создайте два раздела на 8 ТБ и сделайте два раздела raid1, а затем объедините их в LVM.
В конце концов, я хотел бы смонтировать только один раздел. Чтобы еще больше все усложнить, я рассматриваю возможность добавления в смесь еще одного диска, который, скорее всего, не будет RAID, а будет просто вручную резервироваться через RSYNC. Я хотел бы, чтобы этот диск был представлен вместе с RAID1 как единое монтирование, так что это, скорее всего, означает, что я буду использовать LVM для представления окончательного рейда.
Меня беспокоит вариант один, когда нужно добавить LVM к RAID1 /dev/md0, а затем добавить /dev/md0 + еще один диск к ДРУГОМУ LVM.
Я немного обеспокоен тем, что мне придется делать капитальный ремонт своих данных и искать входные данные. Если разбить все по полочкам, то я в основном сосредоточусь на этом вопросе о создании raid1 с 3 дисками, два из которых маленькие, а один большой. Затем я смогу сосредоточиться на следующей части.
Спасибо и дайте мне знать, если вам понадобится что-то еще.
Обновлять:
Я сейчас думаю использовать ZFS вместо mdadm, чтобы изучить новый инструмент. Что-то вроде использования LVM для создания пула из 2x 5 ТБ, а затем пула ZFS из lvm + 8 ТБ HDD. Это будет нормально?> Я читал, что ZFS хочет прямой доступ к дискам, и интересно, будет ли LVM работать в этой ситуации.
решение1
Использовать ZFS таким образом не "рекомендуется", но работать будет нормально. Вполне возможно использовать mdadm для объединения двух дисков по 5 ТБ и затем передать это устройство в ZFS.
Существует множество советов по настройке ZFS для крупных производственных систем, которые просто не имеют отношения к мелкомасштабным пользователям, желающим использовать ZFS для защиты целостности данных.
Я предполагаю, что у вас какой-то новый дистрибутив Linux, в таком случае:
mdadm --create /dev/md/twosmall /dev/disk/by-id/small1 /dev/disk/by-id/small2 --level=0 --raid-devices=2
создаст вам устройство объемом 10 ТБ в /dev/md/twosmall, а затем:
zpool create -f eight mirror /dev/md/twosmall /dev/disk/by-id/large
создаст пул zfs из этой комбинации.
Обратите внимание, -f
что , поскольку в противном случае zpool create
команда не будет выполнена из-за разных размеров устройств. Я бы рекомендовал сначала запустить ее без , -f
чтобы убедиться, что нет других сообщений об ошибках.
twosmall
и eight
— это имена, которые я выбрал случайным образом для mdadm raid и zfs pool, и вам следует заменить имена /dev/disk/by-id
на соответствующие. Я использую команду, ls -l /dev/disk/by-id | grep -v part | grep -v wwn | sort -k 11
чтобы получить список дисков в моей системе, отсортированный по ярлыкам /dev/sd?.
решение2
В итоге я пришел к выводу, что в Linux есть много способов обойти конкурентов, и тот, кто сказал, что нужно иметь два диска одинакового размера, не проявил креативности!
Примечание: ZFS предпочитает использовать целые диски, поэтому вы теряете некоторые из ее возможностей при использовании разделов. Изучите этот вопрос самостоятельно, но для моего домашнего сервера/пула хранения данных я уверен, что это нормально.
Я использовал ZFS для создания разделов следующим образом:
1x4TB /dev/sda1
1x1TB /dev/sda2
1x4TB /dev/sdb1
1x1TB /dev/sdb2
1x4TB /dev/sdc1
1x4TB /dev/sdc2
Затем создал зеркала с ZFS следующим образом:
/dev/sda1 /dev/sdc1 # 8TB
/dev/sdb1 /dev/sdc2 # 8TB
/dev/sda2 /dev/sdb2 # That leftover 1TB, might as well not waste it!
Наконец, я представил все это с помощью MergeFS как единую точку монтирования для «ОС/конечного пользователя».
Примечание: у меня были большие проблемы с « mhddfs
даже не беспокойтесь, используйте » mergefs
.