Logical Volume Manager (LVM)
LVM, Linux'ta esnek disk yönetimi sağlayan bir soyutlama katmanıdır. Dinamik genişletme ve snapshot desteği sunar.
LVM Kavramları
- Physical Volume (PV): Fiziksel disk veya partition
- Volume Group (VG): PV'lerin havuzu
- Logical Volume (LV): VG üzerinde oluşturulan sanal disk
LVM Kurulumu
# Physical Volume oluşturma
pvcreate /dev/sdb
pvcreate /dev/sdc
pvdisplay
pvs
Volume Group oluşturma
vgcreate datavg /dev/sdb /dev/sdc
vgdisplay datavg
vgs
Logical Volume oluşturma
lvcreate -L 100G -n datalv datavg
lvcreate -l 100%FREE -n backuplv datavg
lvdisplay
lvs
Filesystem oluşturma
mkfs.xfs /dev/datavg/datalv
mkfs.ext4 /dev/datavg/backuplv
Mount
mkdir /data /backup
mount /dev/datavg/datalv /data
mount /dev/datavg/backuplv /backup
/etc/fstab'a ekleme
echo "/dev/datavg/datalv /data xfs defaults 0 0" >> /etc/fstab
LVM Genişletme
# Yeni disk ekle
pvcreate /dev/sdd
vgextend datavg /dev/sdd
Logical Volume genişlet
lvextend -L +50G /dev/datavg/datalv
veya
lvextend -l +100%FREE /dev/datavg/datalv
Filesystem genişlet (XFS - online)
xfs_growfs /data
Filesystem genişlet (ext4 - online)
resize2fs /dev/datavg/backuplv
LVM Snapshot
# Snapshot oluşturma (backup için)
lvcreate -L 10G -s -n datalv_snap /dev/datavg/datalv
Snapshot'tan mount
mkdir /mnt/snapshot
mount -o ro /dev/datavg/datalv_snap /mnt/snapshot
Backup al
tar -czvf /backup/data_backup.tar.gz /mnt/snapshot/
Snapshot silme
umount /mnt/snapshot
lvremove /dev/datavg/datalv_snap
LVM Thin Provisioning
# Thin pool oluştur
lvcreate -L 500G --thinpool thinpool datavg
Thin volume oluştur (over-provisioned)
lvcreate -V 200G --thin -n thinvol1 datavg/thinpool
lvcreate -V 200G --thin -n thinvol2 datavg/thinpool
Thin pool kullanımı izleme
lvs -a
Sonuç
LVM, dinamik disk yönetimi için vazgeçilmez bir araçtır. Thin provisioning ile depolama verimliliği artırılır.