Инструменты пользователя

Инструменты сайта


lvm

**Это старая версия документа!**

Работа с LVM

Все Физические диски по 8 Gb

Создадим физические тома из дисков или разделов

pvcreate /dev/sdb1
pvcreate /dev/sdc

Создаем группу физических томов

vgcreate -s 32M vg1 /dev/sdb1 /dev/sdc

  • s размер экстента

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
— Logical volume —
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

и займем все место на первом томе 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 20161025_lv1 /dev/vg1/lv1

-s снимок

-l 10%VG - 10 % места в группе томов

Откат на снапшот

lvconvert –merge /dev/mapper/vg1-20161025_lv3

ПРсмотрим на каких фзических томах располагается тот или иной логический том

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
— Physical volume —
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/lv1mimage0
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/lv1mimage0
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

Отключим диск

и подключим другой


lvconvert -m0 vg0/lv3

vgchange -ay –partial vg1


создадим физический том с используя опцию –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

lvm.1477420006.txt.gz · Последнее изменение: 2016/10/25 21:26 (внешнее изменение)

DokuWiki Appliance - Powered by TurnKey Linux