Блог-шпаргалка

Картинка

LVM RAID уровня зеркало

Категория -> linux
Обновлено: 2025-03-24

Я, как настоящий скуф, очень долго не хотел признавать всю гибкость и прелести разметки LVM, а может просто не хотел даже попробовать разметить таким образом диск, но лучше поздно, чем никогда и наконец-то я решился. Как в совковом к/ф - "Вий", открытые веки восторженно увидели все ништяки LVM. Скажу больше, вместо обычного mdadm raid-массива, я попробовал LVM RAID. О чём в принципе и будет эта статья. Предполагаю, что если ты это читаешь, то имеешь представление что это за технология, поэтому уровни абстракции и теорию опустим, а перейдём сразу к практике. Поехали…

Предварительно мы уже воткнули 2 HDD по соточке. Смотрим что там у нас есть.

lsblk
NAME      MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
sr0        11:0    1 1024M  0 rom  
vda       254:0    0    8G  0 disk 
├─vda1    254:1    0  365M  0 part /boot
└─vda2    254:2    0  7.6G  0 part 
  └─vg-lv 253:0    0  7.6G  0 lvm  /
vdb       254:16   0  100G  0 disk 
vdc       254:32   0  100G  0 disk

Вот они, два маленьких засранца под именами vdb и vdc, которые нас интересуют.

Небольшое отступление - в сети есть куча холиваров, на тему "Надо ли создавать раздел на диске, если он будет использоваться весь?" Ребят, я Вам скажу, что надо! Ибо сам не сталкивался, но при подключении к другой системе, ОСь может посчитать, что он пустой и предложить создать раздел, да и вообще при таком раскладе можно проебать все данные, а экономия места, при отсутствии разделов — это килобайты.

Создаём разделы. Для разметки я предпочитаю использовать встроенные утилиты. Заюзаем fdisk

fdisk /dev/vdb
g
n
enter
enter
enter
t
43
w

Аналогичные действия проделываем со вторым диском.

Инициализируем диски

pvcreate /dev/vd[bc]1
root@test:/home/swapon# pvcreate /dev/vd[bc]1
  Physical volume "/dev/vdb1" successfully created.
  Physical volume "/dev/vdc1" successfully created.

Создаём группу томов именуя её как пожелаете.

vgcreate vgraid /dev/vd[bc]1
root@test:/home/swapon# vgcreate vgraid /dev/vd[bc]1
  Volume group "vgraid" successfully created

Ну и создаём логический диск RAID уровня зеркало

lvcreate --size 10G --name testm1 --mirrors 1 vgraid
root@test:/home/swapon# lvcreate --size 10G --name testm1 --mirrors 1 vgraid
  Logical volume "testm1" created.

Процесс создания можно наблюдать командой

lvs -a -o +devices
root@test:/home/swapon# lvs -a -o +devices
  LV                VG     Attr       LSize  Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert Devices                              
  lv                vg     -wi-ao----  7.64g                                                     /dev/vda2(0)                         
  testm1            vgraid rwi-a-r--- 10.00g                                    16.93            testm1_rimage_0(0),testm1_rimage_1(0)
  [testm1_rimage_0] vgraid Iwi-aor--- 10.00g                                                     /dev/vdb1(1)                         
  [testm1_rimage_1] vgraid Iwi-aor--- 10.00g                                                     /dev/vdc1(1)                         
  [testm1_rmeta_0]  vgraid ewi-aor---  4.00m                                                     /dev/vdb1(0)                         
  [testm1_rmeta_1]  vgraid ewi-aor---  4.00m                                                     /dev/vdc1(0)

и особое внимание необходимо обратить на колонку Cpy%Sync, в которой значение желательно должно быть 100, перед использованием диска.

Осталось создать файловую систему. Лично я использую православную ext4, так как плюсов от других особо не вижу.

mkfs.ext4 /dev/vgraid/testm1

и всё! Как говорят наши "друзья" из ближнего зарубежья: - "Ты красаушык Уася!"

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