Все Физические диски по 8 Gb
Создадим физические тома из дисков или разделов
pvcreate /dev/sdb1
pvcreate /dev/sdc
Создаем группу физических томов
vgcreate -s 32M vg1 /dev/sdb1 /dev/sdc
vg1 - название группы
добавим еще один pv в vg1
создадим физический том на /dev/sde
pvcreate /dev/sde\
vgextend vg1 /dev/sde
проверим что получилось
vgdisplay vg1
смотрим
VG Size 23,91 GiB
создадим логические тома lv1 10 GB и lv2 12 GB
lvcreate -n lv1 -L 10G vg1\
lvcreate -n lv2 -L 8G vg1
посмотрим информацию о группе томов
vgdisplay vg1 \
— Volume group —
VG Name vg1
System ID
Format lvm2
Metadata Areas 3
Metadata Sequence No 3
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 2
Open LV 0
Max PV 0
Cur PV 3
Act PV 3
VG Size 23,91 GiB
PE Size 32,00 MiB
Total PE 765
Alloc PE / Size 576 / 18,00 GiB
Free PE / Size 189 / 5,91 GiB
VG UUID 0SveiU-T4WX-2emH-qbt1-1X0t-8jV2-7U3I59
У нас осталось 5,91 свободного места
добавим 2 GB в логический том lv1
lvresize -L 12G vg1/lv1
Size of logical volume vg1/lv1 changed from 10,00 GiB (320 extents) to 12,00 GiB (384 extents). Logical volume lv1 successfully resized.
просмотри информацию о логических томах
lvdisplay
LV Path /dev/vg1/lv1
LV Name lv1 VG Name vg1 LV UUID N4XNNV-fW5t-bXhM-d90a-aDgf-LpfB-j9sMer LV Write Access read/write LV Creation host, time ktest.mkm, 2016-10-22 19:39:50 +0300 LV Status available # open 0 LV Size 12,00 GiB Current LE 384 Segments 3 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 253:3 --- Logical volume --- LV Path /dev/vg1/lv2 LV Name lv2 VG Name vg1 LV UUID XXIda1-K8fc-RcTZ-G1YZ-DNTE-yABY-Yn9aLi LV Write Access read/write LV Creation host, time ktest.mkm, 2016-10-22 20:03:09 +0300 LV Status available # open 0 LV Size 8,00 GiB Current LE 256 Segments 2 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 253:4
создадим файловую систему на логическом диске lv1
mkfs.ext4 /dev/vg1/lv1
создадим точки монтирования и примонтируем
mkdir /lv1 mkdir /lv2
mount /dev/vg1/lv1 /lv1/
Запишим туда файл который займет все место
dd if=/dev/urandom of=/lv1/data.raw
du -h /lv1/data.raw
посчитаем контрольную сумму
md5sum /lv1/data.raw
a23415baeeb3f9ab152e1de079ffd9c8 /lv1/data.raw
добавим два гигабайта на lv1
lvresize -L 14G vg1/lv1
теперь увеличим размер файловой системы
для этого размонтируем
umount /lv1
проверим файловую систему
fsck -f /dev/vg1/lv1
дораспределим 2 gb на диске
resize2fs /dev/vg1/lv1 14G
смонтируем
mount /dev/vg1/lv1 /lv1/
посмотрим доступное место на диске
df -h Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg1-lv1 14G 12G 1,3G 91% /lv1
проверим файл посчитав контрольную сумму
md5sum /lv1/data.raw a23415baeeb3f9ab152e1de079ffd9c8 /lv1/data.raw
создадим файловую систему и смонтируем второй логический том (для примера обратимся через mapper)
mkfs.ext3 /dev/mapper/vg1-lv2
mount /dev/mapper/vg1-lv2 /lv2/
создадим файл с данными на диске
dd if=/dev/urandom of=/lv2/data2.raw
dd if=/dev/urandom of=/lv2/data2.raw dd: запись в «/lv2/data2.raw»: На устройстве кончилось место 16198809+0 записей считано 16198808+0 записей написано скопировано 8293789696 байт (8,3 GB), 578,605 c, 14,3 MB/c
и займем все место на первом томе [root@ktest ~]# dd if=/dev/urandom of=/lv1/data3.raw dd: запись в «/lv1/data2.raw»: На устройстве кончилось место 4128505+0 записей считано
Теперь представим что место что один из дисков нужно заменить (делается все на примонтированных томах)
Тк у нас все логические тома забиты до отказа, то можно утверждать что исмользованы все диски физические диски и физически места в системе больше нет
Перед заменой нам придется создать физический том и добавить его в нашу группу томов
pvcreate /dev/sdf
vgextend vg1 /dev/sdf
перенесем данные на другие физические тома с /dev/sdb1
pvmove /dev/sdb1
удалим наш том из группы томов
vgreduce vg1 /dev/sdb1
Снимим отметку о том что это том lvm
pvremove /dev/sdb1
добавим в систему физитеский том и добавим его в группу томов vg1
pvcreate /dev/sdg
vgextend vg1 /dev/sdg
сделаем снимок тома lv1
lvcreate -l 10%VG -s -n 20151023_lv1 /dev/vg1/lv1
-s снимок
-l 10%VG - 10 % места в группе томов
ПРсмотрим на каких фзических томах располагается тот или иной логический том
lvdisplay -m
pvdisplay -m
создадим зеркалирование
добавим новые физические тома в vg1
pvcreate /dev/sdh
pvcreate /dev/sdi
vgextend vg1 /dev/sdi /dev/sdh
Добавление зеркала к логическому тому
lvconvert -m 1 -b vg1/lv1
-m 1 добавить одно зеркало
-b делать в фоне
аосмотрим на каких дисках лежат логические тома и увидим
pvdisplay -m
PV Name /dev/sdc
VG Name vg1 PV Size 8,00 GiB / not usable 32,00 MiB Allocatable yes PE Size 32,00 MiB Total PE 255 Free PE 60 Allocated PE 195 PV UUID SLWeEE-brs2-dVoO-Kluw-mR8B-ZXCg-xmBO8k --- Physical Segments --- Physical extent 0 to 64: Logical volume /dev/vg1/lv1_mimage_0 Logical extents 255 to 319 Physical extent 65 to 65: Logical volume /dev/vg1/lv2 Logical extents 255 to 255 Physical extent 66 to 193: Logical volume /dev/vg1/lv1_mimage_0 Logical extents 320 to 447 Physical extent 194 to 194: Logical volume /dev/vg1/lv1_mlog Logical extents 0 to 0 Physical extent 195 to 254:
на томе /dev/sdc1 лежит
/dev/vg1/lv1mimage0
Отключим диск
и подключим другой
создадим физический том с используя опцию –restorefile /etc/lvm/backup/vg1
pvcreate –uuid SLWeEE-brs2-dVoO-Kluw-mR8B-ZXCg-xmBO8k –restorefile /etc/lvm/backup/vg1 /dev/sdc
выполним востановление группы томов
vgcfgrestore -f /etc/lvm/backup/vg1 vg1
использование ssd кеша в lvm
подключим к системе ssd носитель размером 16 GB
он оперделился как /dev/sdj
pvcreate /dev/sdj
vgextend vg1 /dev/sdj
lvcreate -n metacache_lv1 -L2G vg1 /dev/sdj
lvcreate -n datacache_lv1 -L13G vg1 /dev/sdj
создадим из них пул
lvconvert –type cache-pool –cachemode writeback –poolmetadata vg1/metacachelv1 vg1/datacachelv1
writethrough - любые данные будут записаны на кеш и диск, при потере кеша данные не теряются writeback - данные пишутся сначала на кеш, после сбрасываются на диск, есть риск потерять данные
Соберем кешпул и кешируемый логический том
lvconvert –type cache –cachepool vg1/datacache_lv1 vg1/lv2
кешируем lv2 т.к. кеширование зеркальных томов не поддерживается
проверим кеширование
lvs -a
lv2 vg1 Cwi-a-C— 8,00g [datacache_lv1] 0,00 0,09 0,00