LVM'de 'Mantıksal Hacim ve Geri Yüklemenin Anlık Görüntüsü' Nasıl Alınır - Bölüm III


LVM Anlık Görüntüleri lvm birimlerinin yerden tasarruf sağlayan belirli bir noktaya ait kopyalarıdır. Yalnızca lvm ile çalışır ve yalnızca kaynak mantıksal birimden anlık görüntü birimine değişiklik yapıldığında alanı tüketir. Kaynak biriminde toplam 1 GB'lık büyük değişiklikler yapılmışsa, aynı değişiklikler anlık görüntü biriminde de yapılacaktır. Alan verimliliği için her zaman küçük boyutlu değişikliklere sahip olmak en iyisidir. Snapshot'ın depolama alanının tükenmesi durumunda büyümek için lvextend'i kullanabiliriz. Ve eğer anlık görüntüyü küçültmemiz gerekiyorsa lvreduce'u kullanabiliriz.

Anlık Görüntü oluşturduktan sonra yanlışlıkla herhangi bir dosyayı silersek endişelenmemize gerek kalmaz çünkü anlık görüntü, sildiğimiz orijinal dosyayı içerir. Anlık görüntü oluşturulduğunda dosyanın orada olması mümkündür. Anlık görüntü birimini değiştirmeyin; anlık görüntü hızlı bir kurtarma işlemi için kullanıldığında olduğu gibi bırakın.

Anlık görüntüler yedekleme seçeneği olarak kullanılamaz. Yedeklemeler bazı verilerin Birincil Kopyalarıdır, dolayısıyla anlık görüntüleri yedekleme seçeneği olarak kullanamayız.

Gereksinimler

  1. Linux'ta LVM ile Disk Depolama Oluşturma – BÖLÜM 1
  2. Linux'ta LVM'ler Nasıl Genişletilir/Küçültülür – Bölüm II
Sunucu Kurulumum
  1. İşletim Sistemi – LVM Kurulumlu CentOS 6.5
  2. Sunucu IP'si – 192.168.0.200

Adım 1: LVM Anlık Görüntüsü Oluşturma

İlk olarak, aşağıdaki 'vgs' komutunu kullanarak yeni bir anlık görüntü oluşturmak için birim grubundaki boş alanı kontrol edin.

vgs
lvs

Yukarıdaki vgs çıktısında 8GB boş alan kaldığını görüyorsunuz. Şimdi tecmint_datas adlı birimlerimden biri için anlık görüntü oluşturalım. Gösterim amacıyla aşağıdaki komutları kullanarak yalnızca 1 GB anlık görüntü birimi oluşturacağım.

lvcreate -L 1GB -s -n tecmint_datas_snap /dev/vg_tecmint_extra/tecmint_datas        

OR

lvcreate --size 1G --snapshot --name tecmint_datas_snap /dev/vg_tecmint_extra/tecmint_datas

Yukarıdaki komutların her ikisi de aynı şeyi yapar:

  1. -s – Anlık Görüntü Oluşturur
  2. -n – Anlık görüntünün adı

Burada, yukarıda vurgulanan her noktanın açıklaması bulunmaktadır.

  1. Burada oluşturduğum anlık görüntünün boyutu.
  2. Anlık görüntü oluşturur.
  3. Anlık görüntü için ad oluşturur.
  4. Yeni anlık görüntülerin adı.
  5. Anlık görüntüsünü oluşturacağımız bir birim.

Bir anlık görüntüyü kaldırmak istiyorsanız ‘lvremove’ komutunu kullanabilirsiniz.

# lvremove /dev/vg_tecmint_extra/tecmint_datas_snap

Şimdi aşağıdaki komutu kullanarak yeni oluşturulan anlık görüntüyü listeleyin.

lvs

Yukarıda gördüğünüz gibi, bir anlık görüntü başarıyla oluşturuldu. Anlık görüntülerin oluşturulduğu yerden geldiği yeri bir okla işaretledim, bu tecmint_datas. Evet, çünkü tecmint_datas l-volume için bir anlık görüntü oluşturduk.

tecmint_datas'a birkaç yeni dosya ekleyelim. Artık birimin 650 MB civarında bazı verileri var ve anlık görüntü boyutumuz 1 GB. Yani snap hacmindeki değişikliklerimizi yedeklemek için yeterli alan var. Burada aşağıdaki komutu kullanarak anlık görüntümüzün durumunun ne olduğunu görebiliriz.

lvs

Görüyorsunuz, anlık görüntü biriminin %51'i kullanıldı, dosyalarınızda daha fazla değişiklik yapmanıza gerek yok. Daha detaylı bilgi için komutunu kullanın.

lvdisplay vg_tecmint_extra/tecmint_data_snap

Yine yukarıdaki resimde vurgulanan her noktanın net bir açıklaması bulunmaktadır.

  1. Anlık Görüntü Mantıksal Biriminin Adı.
  2. Şu anda kullanımda olan birim grubu adı.
  3. Anlık görüntü hacmi okuma ve yazma modunda, hatta birimi monte edip kullanabiliriz.
  4. Anlık görüntünün oluşturulduğu zaman. Bu çok önemlidir çünkü anlık görüntü bu süreden sonraki her değişikliği arayacaktır.
  5. Bu anlık görüntü tecmint_datas mantıksal birimine aittir.
  6. Mantıksal bir cilt çevrimiçidir ve kullanıma açıktır.
  7. Anlık görüntüsünü aldığımız Kaynak biriminin boyutu.
  8. Cow-table size=Write'da kopyala; bu, tecmint_data biriminde yapılan her türlü değişikliğin bu anlık görüntüye yazılacağı anlamına gelir.
  9. Şu anda kullanılan snapshot boyutu tecmint_datas'ımız 10G ama snapshot boyutumuz 1GB yani dosyamız 650 MB civarında. Yani şu anda %51 olan şey, eğer dosya tecmint_datas boyutunda 2GB boyutuna ulaşırsa, tahsis edilen anlık görüntü boyutundan daha fazla artacaktır, elbette anlık görüntü ile başımız dertte olacaktır. Bu, mantıksal birimin (anlık görüntü birimi) boyutunu genişletmemiz gerektiği anlamına gelir.
  10. Anlık görüntü için parçanın boyutunu verir.

Şimdi tecmint_datas'a 1GB'tan fazla dosya kopyalayalım, bakalım ne olacak. Bunu yaparsanız, anlık görüntüde yer kalmadığı anlamına gelen 'Giriş/çıkış hatası' diyen bir hata mesajı alırsınız.

Mantıksal birim dolarsa otomatik olarak düşer ve anlık görüntü biriminin boyutunu genişletsek bile artık onu kullanamayız. Anlık görüntü oluştururken Source ile aynı boyuta sahip olmak en iyi fikir, tecmint_datas boyutu 10G idi, eğer 10GB boyutunda bir anlık görüntü oluşturursam asla yukarıdaki gibi taşma yapmaz çünkü kaplayacak yeterli alana sahiptir ses seviyenizin anlık görüntüleri.

Adım 2: LVM'de Anlık Görüntüyü Genişletin

Taşma öncesinde anlık görüntü boyutunu genişletmemiz gerekiyorsa bunu kullanarak yapabiliriz.

lvextend -L +1G /dev/vg_tecmint_extra/tecmint_data_snap

Artık anlık görüntü için toplam 2GB boyutu vardı.

Daha sonra aşağıdaki komutu kullanarak yeni boyutu ve COW tablosunu doğrulayın.

lvdisplay /dev/vg_tecmint_extra/tecmint_data_snap

Snap biriminin boyutunu ve kullanımını bilmek için %.

lvs

Ancak Kaynak birimiyle aynı boyutta bir anlık görüntü biriminiz varsa bu sorunlar hakkında endişelenmemize gerek yok.

3. Adım: Anlık Görüntüyü Geri Yükleme veya Birleştirme

Anlık görüntüyü geri yüklemek için önce dosya sisteminin bağlantısını kaldırmamız gerekir.

unmount /mnt/tecmint_datas/

Bağlantının kesilip kesilmediğini kontrol etmek için bağlantı noktasını kontrol edin.

df -h

İşte montaj kaldırıldı, böylece anlık görüntüyü geri yüklemeye devam edebiliriz. lvconvert komutunu kullanarak eki geri yüklemek için.

lvconvert --merge /dev/vg_tecmint_extra/tecmint_data_snap

Birleştirme tamamlandıktan sonra anlık görüntü birimi otomatik olarak kaldırılacaktır. Artık df komutunu kullanarak bölümümüzün alanını görebiliriz.

df -Th

Anlık görüntü biriminden sonra otomatik olarak kaldırılır. Mantıksal birimin boyutunu görebilirsiniz.

lvs

Önemli: Anlık Görüntüleri otomatik olarak genişletmek için bunu conf dosyasındaki bazı değişiklikleri kullanarak yapabiliriz. Manuel olarak lvextend kullanarak genişletebiliriz.

Seçtiğiniz düzenleyiciyi kullanarak lvm yapılandırma dosyasını açın.

vim /etc/lvm/lvm.conf

Otomatik genişletme kelimesini arayın. Varsayılan olarak değer aşağıdakine benzer olacaktır.

Burada 10075 olarak değiştirin; bu durumda otomatik uzatma eşiği 75 ve otomatik uzatma yüzdesi 20 olur boyutunu Yüzde 20 artıracak

Anlık görüntü hacmi %75'e ulaşırsa, anlık görüntü biriminin boyutu otomatik olarak %20 oranında daha genişler. Böylece otomatik olarak genişleyebiliriz. wq! kullanarak dosyayı kaydedin ve çıkın.

Bu, anlık görüntüleri taşma düşüşünden kurtaracaktır. Bu aynı zamanda daha fazla zaman kazanmanıza da yardımcı olacaktır. LVM, daha fazla genişletebileceğimiz ve Thin Provisioning, Striping, Virtual Volume ve daha fazlası gibi birçok özelliğe sahip olabileceğimiz tek Partition yöntemidir Thin-pool kullanımı, bunları bir sonraki konuda görelim.