- Konum
- BERTUNA
-
- Üyelik Tarihi
- 2 Haz 2020
-
- Mesajlar
- 5,352
-
- MFC Puanı
- 16,350
Mantıksal Hacim Yönetimi (LVM) Nedir ?
Mantısal Hacim Yönetimi modüler disk veri kümesi oluşturmamıza böylelikle de mevcut disk alanımız üzerinde dilediğimiz zaman dilediğimiz boyutlandırmayı yeniden yapabilmemize, düzenleyebilmemize olanak sağlayan bir yapıdır. Disk alanımızın yetersiz kaldığı durumlarda LVM ile oluşturduğumuz disk veri kümesine, kolaylıkla yeni disk veya disk bölümleri ilave edebilir, çıkarabilir mevcut ihtiyaçlarımıza göre disk alanımızı şekillendirebiliriz.
Özellikle yansı tutulan ve büyük disk alanı ihtiyacı olan sistemlerde LVM ile disk veri kümeleri (veya veri dizinide diyebiliriz) oluşturularak mevcut disk alanının ihtiyaçlara cevap veremediği durumlarda sisteme yeni bir disk daha eklenerek mevcut veri kümesi eklenilen disk miktarı kadar genişletilir. Veya sistemde atıl durumda olan bir disk bölümü aktif disk kümesine dahil edilebilir, mevcut disk bölümlerinin boyutları ile oynanabilir. Yapılacak fiziksel veri alanı değişikliklerinden sistemin mevcut haritası hiçbir şekilde etkilenmez ve yeni yol tanımları yapmaya gerek kalmaz.
Daha somut bir örnek ile ifade etmek istersek, diyelimki sistemimizde /home için ayrılmış 100 GB'lık yer ve /var için ayrılmış 2GB'lık bir alan var ve zamanla /var için ayırmış olduğumuz disk alanı kâfi gelmemeye başladı. Bu durumda şayet /home alanında da kullanılmayan yeterli boş alan varsa bu alanı /var bölümüne aktarabilir mevcut alanı kolayca yeniden boyutlandırabiliriz. Aynı şekilde /home için ayırdığımız alan yetmemeye başladığı zaman da sisteme ekleyeceğimiz yeni bir disk ile bu bölüm için kullanılabilir veri alanını arttırabiliriz. Yansı (mirror) yapılan sistemlerde kullanılan disk veri alanları genelde birden fazla diskin LVM veya aynı işi yapan başka yapılarla (EVMS, Veritas gibi) birleştirilerek veri kümesi oluşturulması ile sağlanırlar.
Ev kullanıcılarının çok ihtiyaç duymayacağı bir yapı olmasına karşın, veri alanı olarakda modüler ve ölçeklenebilir sistemler oluşturmak isteyenler için çok önemli ve kullanışlı bir yapıdır.
LVM, hacim grubu (VG) içerisinde fiziksel (PV) ve mantısal hacimlerden (LV) oluşur. LVM'nin yapısı ile ilgili bir miktar daha ayrıntıya girelim.
Hacim Grubu (VG)
Hacim grubu, fiziksel ve mantıksal hacimleri içine alan üst düzey katmandır.
Fiziksel Hacim (PG)
Fiziksel hacim adından da anlaşılacağı üzere fiziksel aygıtlardan (disklerden) veya disk bölümlerinden oluşan kısımdır.
Mantıksal Hacim (LV)
Disk bölümlerinin karşılığıdır. Dosya sistemi içerir.
Aşağıdaki şekil ile yine yukarıda izahı çalışılan yapı kabaca ifade edilmektedir.
Mantısal Hacim Yönetimi modüler disk veri kümesi oluşturmamıza böylelikle de mevcut disk alanımız üzerinde dilediğimiz zaman dilediğimiz boyutlandırmayı yeniden yapabilmemize, düzenleyebilmemize olanak sağlayan bir yapıdır. Disk alanımızın yetersiz kaldığı durumlarda LVM ile oluşturduğumuz disk veri kümesine, kolaylıkla yeni disk veya disk bölümleri ilave edebilir, çıkarabilir mevcut ihtiyaçlarımıza göre disk alanımızı şekillendirebiliriz.
Özellikle yansı tutulan ve büyük disk alanı ihtiyacı olan sistemlerde LVM ile disk veri kümeleri (veya veri dizinide diyebiliriz) oluşturularak mevcut disk alanının ihtiyaçlara cevap veremediği durumlarda sisteme yeni bir disk daha eklenerek mevcut veri kümesi eklenilen disk miktarı kadar genişletilir. Veya sistemde atıl durumda olan bir disk bölümü aktif disk kümesine dahil edilebilir, mevcut disk bölümlerinin boyutları ile oynanabilir. Yapılacak fiziksel veri alanı değişikliklerinden sistemin mevcut haritası hiçbir şekilde etkilenmez ve yeni yol tanımları yapmaya gerek kalmaz.
Daha somut bir örnek ile ifade etmek istersek, diyelimki sistemimizde /home için ayrılmış 100 GB'lık yer ve /var için ayrılmış 2GB'lık bir alan var ve zamanla /var için ayırmış olduğumuz disk alanı kâfi gelmemeye başladı. Bu durumda şayet /home alanında da kullanılmayan yeterli boş alan varsa bu alanı /var bölümüne aktarabilir mevcut alanı kolayca yeniden boyutlandırabiliriz. Aynı şekilde /home için ayırdığımız alan yetmemeye başladığı zaman da sisteme ekleyeceğimiz yeni bir disk ile bu bölüm için kullanılabilir veri alanını arttırabiliriz. Yansı (mirror) yapılan sistemlerde kullanılan disk veri alanları genelde birden fazla diskin LVM veya aynı işi yapan başka yapılarla (EVMS, Veritas gibi) birleştirilerek veri kümesi oluşturulması ile sağlanırlar.
Ev kullanıcılarının çok ihtiyaç duymayacağı bir yapı olmasına karşın, veri alanı olarakda modüler ve ölçeklenebilir sistemler oluşturmak isteyenler için çok önemli ve kullanışlı bir yapıdır.
LVM, hacim grubu (VG) içerisinde fiziksel (PV) ve mantısal hacimlerden (LV) oluşur. LVM'nin yapısı ile ilgili bir miktar daha ayrıntıya girelim.
Hacim Grubu (VG)
Hacim grubu, fiziksel ve mantıksal hacimleri içine alan üst düzey katmandır.
Fiziksel Hacim (PG)
Fiziksel hacim adından da anlaşılacağı üzere fiziksel aygıtlardan (disklerden) veya disk bölümlerinden oluşan kısımdır.
Mantıksal Hacim (LV)
Disk bölümlerinin karşılığıdır. Dosya sistemi içerir.
Aşağıdaki şekil ile yine yukarıda izahı çalışılan yapı kabaca ifade edilmektedir.

Özetlemek gerekirse, yukarıdaki şekilden de görüleceği üzere, fiziksel hacime örnek elimizdeki diskleri veya bu diskimizdeki bölümleri verebiliriz. İki farklı disk bölümünü birleştirip ortaya bir hacim grubu (VG) çıkartır daha sonra bu hacim grubunun içerisinde de mantıksal bölümlemeler (LV) yaparız. Bu mantıksal bölümlerde dosya sistemlerini içerirler. Dosya sistemi olarak her mantıksal bölümde farklı birşey kullanabiliriz.
Hacim gruplarına ve bunların içlerindeki mantıksal hacimlere aşağıdaki şekil ilede bakabiliriz.
Hacim gruplarına ve bunların içlerindeki mantıksal hacimlere aşağıdaki şekil ilede bakabiliriz.

Ayrıca fiziksel hacim içerisinde bulunan fiziksel kümeler (PE) ve aynı şekilde mantıksal hacim içerisinde bulunan mantısal kümeler vardır. Bunların varsayılan değeri 4 MB'dır. Yani varsayılan olarak PE = LE = 4 MB'dır.
Fiziksel Birimler (PE)
Fiziksel hacim her biri eşit uzunlukta (varsayılan değeri 4 MB) iri veri parçalarına bölünmüştür. Bunlara fiziksel birimlerı denilebilir.
Mantıksal Birimler (LE)
Yine aynı şekilde mantıksal hacimlerde her biri eşit uzunlukta (varsayılan değeri 4 MB) iri veri parçalarına bölünmüştür. Bunlarada mantıksal birimler denilebilir. PE ve LE'ler arasında da bire-bir ilişki vardır.
Fiziksel Birimler (PE)
Fiziksel hacim her biri eşit uzunlukta (varsayılan değeri 4 MB) iri veri parçalarına bölünmüştür. Bunlara fiziksel birimlerı denilebilir.
Mantıksal Birimler (LE)
Yine aynı şekilde mantıksal hacimlerde her biri eşit uzunlukta (varsayılan değeri 4 MB) iri veri parçalarına bölünmüştür. Bunlarada mantıksal birimler denilebilir. PE ve LE'ler arasında da bire-bir ilişki vardır.

Aşağıdaki şekilde de iki farklı diskin birleştirilmesi ve üzerlerinde /home ile /var bölümlerinin tanımlanmasını görebilirsiniz.

Ayrıca Volume Group Descriptor Area (VGDA) kavramı vardır ki buda disk bölümleme tablosunun LVM'deki karşılığıdır.
LVM Bize Ne Sunar ?
1- Ölçeklenebilirlik
Çok yüksek veri alanları kümesi (veya dizisi) oluşturabilmemizi sağlar. LVM sayesinde Terabyte'lar mertebesinde disk veri alanı dizileri oluşturabiliriz
2- Kullanılabilirlik
Oluşturulan veri alanlarını dinamik şekilde yönetebilir, dilediğimizde yeni veri alanları ilavesi yapabilir veya fazla veri alanlarını sistemden çıkarabiliriz.
3- Anlık Görüntü (Snapshot)
Özellikle yedekleme işleminde kullanılan önemli bir özelliktir. Diyelimki üzerinde sürekl işlem yapılan bir veri alanınız (veritabanı) var. Siz bu veritabanını tutarlı (consistent) bir anında yedeklemek istiyorsunuz. Bu durumda snapshot özelliği sizin için çok büyük kolaylık ve hız sağlar.
Bu veritabanını normal yöntemlerle (copy, rsync vb.) bir yerden diğer bir yere yedeklerken yedek aldığınız yerdeki veritabanı o an için tutarlı olmayan bir durumda kalmış olabilir. Bir veri A tablosuna yazıldıktan sonra o veri ile ilişkili başka veriler tam B tablosuna da yazılacağı sırada yaptığınız bir yedekleme elinizdeki yedeğin tutarsız olmasına sebep verebilir. Bunu engellemek için yedek almadan önce, veritabanızı tutarlı olduğunu bildiğiniz bir anında durdurup yedekleriniz alıp sonra veritabanınızı kaldığı yerden devam ettirebilirsiniz. Ancak bu durum özellikle yüksek oranda veri yedeklemesi yapacağınız durumlarda çok yüksek oranlarda geçikmeye ve sistemin işlemez hale gelmesine sebep olacaktır. Bununda önüne geçebilmek veritabanınızın tutarlı olduğunu bildiğiniz bir anında LVM ile snapshot'ını alır ve veritabanınızın duraksamasına engel olmuş olursunuz. Snapshot almadan önce tutarlı durumu korumayı garanti edebilmek için veritabanını durdursanız bile snapshot ile yedekleme işlemi çok kısa zaman alacağı için veritabanını tekrar aktif etmeniz çok uzun sürmeyecektir.
Snapshot varolan hacim grubu içinde bu iş için kullanılmak üzere mantıksal hacim oluşturmak işlemidir.
Çok yüksek veri alanları kümesi (veya dizisi) oluşturabilmemizi sağlar. LVM sayesinde Terabyte'lar mertebesinde disk veri alanı dizileri oluşturabiliriz
2- Kullanılabilirlik
Oluşturulan veri alanlarını dinamik şekilde yönetebilir, dilediğimizde yeni veri alanları ilavesi yapabilir veya fazla veri alanlarını sistemden çıkarabiliriz.
3- Anlık Görüntü (Snapshot)
Özellikle yedekleme işleminde kullanılan önemli bir özelliktir. Diyelimki üzerinde sürekl işlem yapılan bir veri alanınız (veritabanı) var. Siz bu veritabanını tutarlı (consistent) bir anında yedeklemek istiyorsunuz. Bu durumda snapshot özelliği sizin için çok büyük kolaylık ve hız sağlar.
Bu veritabanını normal yöntemlerle (copy, rsync vb.) bir yerden diğer bir yere yedeklerken yedek aldığınız yerdeki veritabanı o an için tutarlı olmayan bir durumda kalmış olabilir. Bir veri A tablosuna yazıldıktan sonra o veri ile ilişkili başka veriler tam B tablosuna da yazılacağı sırada yaptığınız bir yedekleme elinizdeki yedeğin tutarsız olmasına sebep verebilir. Bunu engellemek için yedek almadan önce, veritabanızı tutarlı olduğunu bildiğiniz bir anında durdurup yedekleriniz alıp sonra veritabanınızı kaldığı yerden devam ettirebilirsiniz. Ancak bu durum özellikle yüksek oranda veri yedeklemesi yapacağınız durumlarda çok yüksek oranlarda geçikmeye ve sistemin işlemez hale gelmesine sebep olacaktır. Bununda önüne geçebilmek veritabanınızın tutarlı olduğunu bildiğiniz bir anında LVM ile snapshot'ını alır ve veritabanınızın duraksamasına engel olmuş olursunuz. Snapshot almadan önce tutarlı durumu korumayı garanti edebilmek için veritabanını durdursanız bile snapshot ile yedekleme işlemi çok kısa zaman alacağı için veritabanını tekrar aktif etmeniz çok uzun sürmeyecektir.
Snapshot varolan hacim grubu içinde bu iş için kullanılmak üzere mantıksal hacim oluşturmak işlemidir.
LVM İçin Hangi Dosya Sistemini Tercih Etmeliyiz ?
Bu sizin tercihinize ve birazda alışkanlığınıza kalmış bir mesele. Mesela ben LVM için tercihimi ReiserFS veya Ext3'den yana kullanırım. ReiserFS için LVM'de kullanılabilen resize_reiserfs isimli bir araç var. Bu araç ile yaptığımı veri alanı daraltma ve genişletme işlemlerinde hiçbir sorun ile karşılaşmadım. Buda benim tercihimi ReiserFS'den yana kullanmam için bir artı tabi. Öte yandan uzun zamandır değişik sunucularda kullandığım Ext3 ile şu ana kadar herhangibir sorun yaşamadım. Ext3 ile verilerimi herzaman güvende hissetdim.
Ancak tercih sadece buna göre yapılmamalı, sistemin ne amaçla kullanılacağı ve hangi boyutdaki dosyaların ağırlıkda olacağı, performansın mı yoksa sağlamlılığın mı ön planda tutulmasının gerekli olduğu değerlendirmeleri bir bütün olarak ele alınmalı ve ona göre karar verilmeli.
Ext3 : En çok tercih edilen kararlı dosya sistemlerindendir. Ancak Journaling özelliğe sahip olmaması ve veri kaybı riskinin yüksek olması böyle bir yapıda tercih edilebilirliğini düşürmektedir. Zaten artık günümüzde sıradan sunucularda bile yerini tercih edilebilirlik ve kararlılık açısından Ext3'e bırakmış durumdadır.
Ext4 : En kararlı journaling dosya sistemlerinin başında gelir. Artık çoğu dağıtımda varsayılan kurulumda desteklenir ve tercih edilir durumdadır.
ReiserFs : Özellikle küçük boyutlu bol miktardaki dosyalarda yüksek performans sergilediği söyleniyor. En kötü tarafı bozuk sektörler bulunduran (bad sektör) disklerde bozuk sektör yönetimi yapamadığı ve bu alanlara ulaşamayıp hatalara, sorunlara sebebiyet vermesi. Bu nedenle ReiserFs sağlamlık ve kararlılık konusunda farklı görüşlere yol açabilir. Genel kanı ReiserFS' nin şu an için yeterince olgunlaşmadığı yönünde.
ReiserFS tercih edilecekse, bozuk sektör yönetimi için http://namesys.com/bad-block-handling.html adresinede göz atılmalı.
XFS : Kararlı ve sağlam olarak bilinen journaling dosya sistemlerinden birisi. XFS için amaç yüksek performans değil yüksek kararlılık. Bu açıdan veri kaybının çok büyük zararlara yol açabileceği, verilerin korunmasının son derece önemli olduğu sistemlerde tercih edilebilir. En azından tercih edilebilir dosya sistemleri içerisinde üst sıralarda yer almalıdır.
JFS : Genel olarak henüz linux için kararlı hale gelmediği görüşü hakim.
LVM'nin Limitleri Nelerdir ?Ancak tercih sadece buna göre yapılmamalı, sistemin ne amaçla kullanılacağı ve hangi boyutdaki dosyaların ağırlıkda olacağı, performansın mı yoksa sağlamlılığın mı ön planda tutulmasının gerekli olduğu değerlendirmeleri bir bütün olarak ele alınmalı ve ona göre karar verilmeli.
Ext3 : En çok tercih edilen kararlı dosya sistemlerindendir. Ancak Journaling özelliğe sahip olmaması ve veri kaybı riskinin yüksek olması böyle bir yapıda tercih edilebilirliğini düşürmektedir. Zaten artık günümüzde sıradan sunucularda bile yerini tercih edilebilirlik ve kararlılık açısından Ext3'e bırakmış durumdadır.
Ext4 : En kararlı journaling dosya sistemlerinin başında gelir. Artık çoğu dağıtımda varsayılan kurulumda desteklenir ve tercih edilir durumdadır.
ReiserFs : Özellikle küçük boyutlu bol miktardaki dosyalarda yüksek performans sergilediği söyleniyor. En kötü tarafı bozuk sektörler bulunduran (bad sektör) disklerde bozuk sektör yönetimi yapamadığı ve bu alanlara ulaşamayıp hatalara, sorunlara sebebiyet vermesi. Bu nedenle ReiserFs sağlamlık ve kararlılık konusunda farklı görüşlere yol açabilir. Genel kanı ReiserFS' nin şu an için yeterince olgunlaşmadığı yönünde.
ReiserFS tercih edilecekse, bozuk sektör yönetimi için http://namesys.com/bad-block-handling.html adresinede göz atılmalı.
XFS : Kararlı ve sağlam olarak bilinen journaling dosya sistemlerinden birisi. XFS için amaç yüksek performans değil yüksek kararlılık. Bu açıdan veri kaybının çok büyük zararlara yol açabileceği, verilerin korunmasının son derece önemli olduğu sistemlerde tercih edilebilir. En azından tercih edilebilir dosya sistemleri içerisinde üst sıralarda yer almalıdır.
JFS : Genel olarak henüz linux için kararlı hale gelmediği görüşü hakim.
Herşeyde olduğu gibi LVM de bir takım limitler içerir. Ancak bu limitler günümüzde bile kolay aşılabilecek ve problem oluşturabilecek limitler değiller. Ayrıca bu limitler Çekirdeğin sınırlarına ve PE, LE boyutlarına görede sistemden sisteme farklılık gösterebilir. Söz konusu limitlere kabaca bakacak olursak;
- Makine başına maksimum 99 adet hacim grubu (VG) oluşturabilir.
- Her hacim grubu içinde de maksimum 256 fizisel hacim olabilir.
- Tek bir LVM boyutu varsayılan 4 MB PE değeri ile maksimum 255.99 GB olabilir. Bu değer kullanılan sistemin özelliğine göre 2 TB hatta 1 Petabyte 'a kadar çıkabilir. Kullanılan çekirdek ve mimari özellikleri ile ilişkilidir.
- Her fiziksel hacim grubu yine varsayılan 4 MB'lık PE değeri ile maksimum 262 GB olabilir. Başka bir deiyşle Her fizisel hacim grubu maksimum 65534 PE içerebilir buda varsayılan 4 MB'lık değer ile 65534*4 ~ 262 GB olur.
LVM2, LVM1'e göre daha sağlam ve daha konfigüre edilebilir hale gelmiştir. LVM2 geriye uyumluluk açısından LVM1'in sahip olduğu özelliklerin hepsini barındırır. Ayrıca libdevmapper arayüzü ile haberleşmeyi sağlamak için device-mapper çekirdek sürücüsünü kullanır.
Debian'da LVM1'den LVM2'ye geçebilmek için LVM2 ye ait araçları içeren lvm2 paketinin yüklenmesi ve çekirdekte de device-mapper yamasının uygulanmış olması yeterlidir.
- apt-get install lvm2
ile hem LVM2 araçlarını hemde buna bağımlı olan diğer paketleri (kernel-patch-device-mapper , libdevmapper) indirebilir ve LVM2'ye geçiş yapabilirsiniz. Çekirdeğinizi daha öncesinde Debian metodlarıyla kurmamışsanız, device-mapper yamasını elle ayrıca uygulamak durumundasınız.
Not : Belgedeki kurulum LVM2 olarak yapılmıştır. Bu tarz bir kurulum yapmışsanız zaten LVM2 kullanıyor olacaksınız.
DEVAMI VAR
Not : Belgedeki kurulum LVM2 olarak yapılmıştır. Bu tarz bir kurulum yapmışsanız zaten LVM2 kullanıyor olacaksınız.
DEVAMI VAR