Merhaba, bu makalede linux üzerinde lvm yapılandırılmasını ve komutlarını göreceğiz.
LVM Nedir ?
LVM, modüler disk veri kümesi veya kümeleri oluşturulmasını, böylelikle de istenildiğinde mevcut disk alanı üzerinde istenilen boyutlandırmanın yeniden yapabilmesini sağlar. LVM in en büyük avantajlı rahat bir şekilde partitionlar üzerinde boyutlandırma yapabilmemizdir. LVM de sunucu üzerindeki fiziksel diskler ile Volume gruplar oluşturulur. Bu Volume gruplardan ise logical volumelar oluşturulur. Bu logical volumelerda istenilen yere mount edilir.
Öncelikle sunucu kurulurken nasıl LVM yapılandırabileceğimizi görelim. Biz manuel olarak yapılandıracağız.
İlk olarak disk yapılandırma kısmında “Custom Storage Layout” seçeneğini seçip “Done” butonuna basıyoruz.
Ardından karşımıza çıkan diski tıklayıp “Add GPT Partition” diyoruz.
Ben burada /boot ve swap kısmını standart partition , diğer partitionları LVM yapacağım. Siz swap partitionunu da LVM olarak yapılandırabilirsiniz. Boyutu 1G , mount /boot olacak şekilde “Create” tuşuna basıyoruz.
Şimdi tekrar “Add GPT Partition” diyerek bu sefer format kısmında “Leave Unformatted” seçeneğini seçip “Create” butonuna basıyoruz.
Şimdi “Create volume group (LVM)” diyerek bir LVM grup oluşturalım.
Ben “LVMGroup1” isminde bir LVM grup oluşturdum siz istediğiniz ismi verebilirsiniz. Devices kısmında disklerimizi seçiyoruz. Biz de tane disk var. Eğer birden fazla olsaydı onları da seçebilirdik. Seçip “Create” butonuna basıyoruz.
Şimdi de bu LVM gruptan bir Logical volume oluşturalım ve / dizinine mount edelim.
"Done" diyerek disk işlemlerini tamamlayabiliriz.
Şimdi sunucuya sonradan takılan veya mevcut disklerler işlemler yapabilmek için LVM komutlarını kullanalım.
vgs = Bu komut sunucu üzerinden LVM gruplarını listeler.
lvs = Bu komut LVM gruplardan oluşturulmuş logical volumeleri listeler.
pvs = Bu komut fiziksel diskler ile oluşturulmuş LVM groupları gösterir.
Örneğin; aşağıdaki yapılandırmış olduğumuz LVMGroup1 isimli LVM grubu görüyoruz. Burada #PV kısmı bu gruba bağlı fiziksel diskleri , #LV ise bu gruptan oluşturulmuş logical volumelerin sayını gösterir. VFree bu grup üzerinden boş alanı gösterir.
Altaki lvs komutunda da LV , logical volume ismini ; VG bu logical volumenin oluşturulduğu LVM grubu, LSize ise boyutunu gösterir.
Şimdi sunucuya yeni bir ekleyip lvm komutlarını göreceğiz. Ben şimdi sunucuya 20 GB boyutunda yeni bir taktım.
fdisk -l --- komutu ile sunucuya bağlı diskleri görebiliriz. Eğer
sunucuya taktığınız disk gözükmez ise sunucuda ki
diskleri rescan yapmamız gerekir. Sunucuyu reboot da
edebilirsiniz. Aşağıdaki komutla sunucudaki tüm
diskleri rescan yapabiliriz.
echo "- - -" | tee /sys/class/scsi_host/host*/scan
Taktığımız diski “fdisk -l” komutunu çalıştırdığımızda görüyoruz. Diskin ismi /dev/sdb olmuş. Yapılandırmamızı ona göre yapacağız.
fdisk /dev/sdb --- ile bu diski yapılandırmaya başlayabiliriz.
Karşımıza çıkan sorulara aşağıdaki şekilde cevap verebiliriz. “n” ile yeni partition oluşturuyoruz. “p” ile primary partition oluşturuyoruz. Karşımıza gelen diğer sorulara “Enter” tuşuna basarak ilerleyebiliriz. “w” ile kaydedip çıkış yapıyoruz.
lsblk --- komutunu kullandığımıza bu diskin yapılandırıldığı görebiliriz.
pvcreate /dev/sdb1
Komutu ile bu fiziksel disk LVM için hazırlıyoruz diyebiliriz. Aşağıdaki gibi bir çıktı almalıyız.
vgcreate LVMGroup2 /dev/sdb1 --- ile LVMGroup2 isminde LVM grup oluşturup /dev/sdb1 diskini bu LVM grubuna ekledim. Artık "vgs" komutunu çalıştırdığımıza aşağıdaki gibi bir çıktı almalıyız.Biz burada farklı LVM Group oluşturuyoruz fakat bir LVM grubuna birden fazla fiziksel disk mount edilebilir.
Şimdi sunucuya 10 GB lık bir disk daha takacağım ve bunu LVMGroup2 ye ekleyeceğim. Önceki fdisk ile partiton oluşturma kısmını yapıyoruz. Siz yaparsınız. Ardından aşağıdaki komutları çalıştırıyoruz.
pvcreate /dev/sdc1 ---- yeni taktığım disk /dev/sdc oldu. Partition bir partition oluşturduğum için /dev/sdc1 oldu.
vgextend LVMGroup2 /dev/sdc1 --- ile bu diski bu LVM grubuna ekledik. 20 GB+ 10 GB = 30 GB lık bir LVM grubumuz oldu.
Artık bu partitionlardan Logical volumeler oluşturmaya başlayabiliriz. Aşağıdaki komutla oluşturabiliriz.
lvcreate -n lv_data -L12GB LVMGroup2 ---- bu komutla LVMGroup2 isimli LVM gruptan 12 GB boyutunda lv_data isminde bir Logical volume oluşturduk. Artık vgs komutunu çalıştırığımızda 30 GB - 12 GB = 18 GB boş alan görmeliyiz.
lvs --- komutunu çalıştırdığımızda oluşturduğumuz logical volumeleri tekrardan listeleyebiliriz.
lvdisplay --- ile logical volumelar hakkında daha fazla bilgiye ulaşabiliriz. Burada bu logical volumenin tam adresini öğrenebiliriz. Mount ederken işimize yarayacak.
mkfs.ext4 /dev/LVMGroup2/lv_date --- ile bu logical volumenin disk tipini belirliyoruz. Ben ext4 yaptım.
mount /LVMGroup2/lv_data /veriler --- bu şekilde bu logical volumeyi /veriler isminde ki dizine mount ettik. Kalıcı olması için yani her reboottan sonra otomotik olarak mount edilmesini istiyorsak /etc/fstab dosyasını düzenlemeliyiz.
lvreduce -L-2G /dev/LVGroup2/lv_data --- ile lv_data isimli logical volumenin boyutunu 2 GB azalttık.
lvextend -L+12G /dev/LVGroup2/lv_data --- ile lv_data isimli logical volumenin boyutunu 122 GB arttırdık.
Eğer artırıp azalttıktan sonra "df -h" komutunu kullandığında boyutlar güncellenmediyse "resize2fs /dev/LVGroup2/lv_data" komutunu kullanabilirsiniz.
Aşağıda bazı LVM komutları ve kullanımları görülmektedir.
pvcreate : linux sistemine diski fiziksel olarak tanıtır.
Örnek kullanım: pvcreate /dev/sdb1
pvdisplay: fiziksel olarak tanıtılan diskleri listeler.
pvremove: fiziksel tanımlı diski iptal eder.
Örnek kullanım: pvcreate /dev/sdb1
vgcreate: volume grup oluşturur.
Örnek kullanım: vgcreate Volumegrupisim /dev/sdb1
vgextend: volume grup disk ekler.
Örnek kullanım: vgextend Volumegrupisim /dev/sdc1
vgreduce: volume gruptan diski çıkartır.
Örnek kullanım: vgreduce Volumegrupisim /dev/sdc1
vgremove : Volume grup kaldırır.
Örnek kullanım: vgremove Volumegrupisim
Vgdisplay: volume grupları listeler.
lvdisplay: logical volumeleri listeler.
lvcreate: logical volume oluşturur.
Örnek kullanım: lvcreate -n logicalvolumeismi -L10GB LVMGroupismi
lvremove: logical volume kaldırır.
Örnek kullanım: lvremove /dev/LVMGroupismi/logicalvolumeismi,
öncesinde mount edildiyse umount edilmelidir.
lvreduce: logical volume boyutunu azaltır.
Örnek kullanım: lvreduce -L-3GB /dev/LVMGroupismi/logicalvolumeismi
lvextend: logical volume boyutunu artıtır.
Örnek kullanım: lvreduce -L-3GB /dev/LVMGroupismi/logicalvolumeismi
lvmdiskscan: tüm diskleri listeler.
İyi günler.
Top comments (0)