Настройка RAID1 с активным физическим томом (растягивание Debian 9)

awk solución.

$ awk -F= '/name="rsv-group-name"/{g=$NF}/data="name4"/{print substr(g,2,length(g)-5)}' inputfile
1
08.06.2019, 21:42
2 ответа

Вы можете создать зеркальные тома, добавив sddв VG

pvcreate /dev/sdd
vgextend DATA /dev/sdd

, а затем изменить количество копий каждого LV

lvconvert -m1 DATA/user_data
lvconvert -m1 DATA/app_data

(1 означает две копии данных, 0 означает одну копию )Вы можете проверить ход зеркалирования командой вроде:

lvs -a -o name,copy_percent,devices DATA
1
27.01.2020, 23:30

Что ж, ленивый вариант будет состоять в том, чтобы просто принять текущую конфигурацию, добавить /dev/sddв LVM как есть и позволить LVM самому управлять RAID за вас. Это означает, что mdadmвообще не участвует (во всяком случае, не напрямую ). Смотрите ответ Ромео, он хороший.

Если вы хотите использовать mdadm, хотя это возможно сделать с опозданием (, используя метаданные версии 1.0 в конце диска ), правильный способ сделать это будет на раздел /dev/sdd, поместите mdadmRAID на раздел, поместите LVM на RAID и перенесите данные. И как только вы подтвердите, что копия в порядке, вы можете растворить /dev/sdc, разбить ее таким же образом и добавить в RAID.

Примерно:

# partition step
parted /dev/sdd
(parted) mklabel gpt
(parted) mkpart md0_0 1MiB -1MiB
(parted) print free
(parted) quit

# mdadm step
mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sdd1 missing
mdadm --detail --scan > /etc/mdadm.conf

# lvm step (rsync variant, two independent copies)
vgcreate RAIDDATA /dev/md0
lvcreate...
mkfs...
mount...
# LV structure and filesystems as you see fit, then copy everything over
rsync -a /mnt/DATA/. /mnt/RAIDDATA/.

# alternative lvm step (pvmove variant, single copy)
vgextend DATA /dev/md0
pvmove /dev/sdc
vgreduce DATA /dev/sdc

Перенос файлов с помощью rsyncдолжен быть быстрее и безопаснее (если что-то пойдет не так, исходная копия останется на месте ). В то же время он склонен к пользовательской ошибке (, трудно сказать, пропустил ли rsyncчто-то ).

Перенос данных с помощью pvmoveмедленнее и рискованнее (что-то пойдет не так, исходная копия вроде бы тоже исчезла ), но она ничего не пропустит (, включая удаленные файлы и тому подобное )].

На этом этапе вы хотите обновить UUID (, если вы использовали mkfs, rsync )в fstab/grub и обновить initramfs. Перезагрузитесь и убедитесь, что все в порядке и /dev/sdcбольше не используется. Затем вы можете добавить его в RAID.

# partition step
parted /dev/sdc
(parted) mklabel gpt
(parted) mkpart md0_1 1MiB -1MiB
(parted) print free
(parted) quit

# raid resync step
mdadm /dev/md0 --add /dev/sdc1
watch -n 60 cat /proc/mdstat

Вот и всё...

В целом это дало бы вам настройку, которую большинство людей ожидает (жесткий диск, разделы, рейд, lvm, файловые системы ). Вы также можете добавить шифрование, пока вы это делаете. ;-)

1
27.01.2020, 23:30

Теги

Похожие вопросы