Memory Compression Nedir?

tarafından 2 Ocak 2017 tarihinde VMware, VMware ESXi kategorisine yazıldı.

Merhaba,

Bir önceki yazımda VMware ESXi üzerindeki memory overcommitment yapısı ile ilgili çeşitli bilgiler vermiştim. Bu yazımda ise memory compression özelliği hakkında bilgi vereceğim. Tabi memory compression özelliği doğrudan memory overcommitment ile ilişkili olduğu için ilk başta memory overcommitment yazımı okumanızı tavsiye ederim. Bu yazıya aşağıdaki link’den ulaşabilirsiniz.

Memory Overcommitment Nedir?

Memory overcommitment durumu oluştuğunda virtual machine’lerin performansının arttırılması için memory compression cache kullanılır. Öncelikle şunu söylemeliyim, memory compression özelliği default olarak enable durumdadır. Ancak siz isterseniz bunu disable duruma getirebilirsiniz. Bunun işlemlerinide anlatacağım. Bir ESXi host’da memory overcommitment oluştuğunda, ESXi virtual page‘leri compress eder ve bunları memory’de saklar. Compress edilen memory’e erişmek, diske yazılı olan veriye erişmekten daha hızlı olduğu için memory overcommitment durumlarında memory’nin compress edilmesi performansı olumlu olarak etkilemektedir. Bir virtual machine swap yapmak istediğinde ESXi ilk olarak buradaki page’leri compress etmek ister. 2 KB ve altındaki dosyalar memory üzerinde compress edilir. Böylece ESXi host üzerindeki memory yükü’de alınmış olur.

Default olarak 2 KB ve altındaki page’ler compress edilir ancak siz isterseniz bu değeri değiştirebilirsiniz. Memory Compression default olarak enable durumda gelir. Siz isterseniz bunu disable yapabilirsiniz. Bunun için vSphere Web Client‘a login olduktan sonra aşağıdaki adımları izleyebilirsiniz.

memorycompress

ESXi host’umuzu seçtikden sonra,

Configure > Advanced Settings

Bölümüne giriş yapıyoruz. Burada aşağıda belirteceğim parametreyi isterseniz filter bölümünden aratıp durumuna hızlıca bakabilir isterseniz de Edit bölümünden değiştirebilirsiniz.

Mem.MemZipEnable

Default olarak enable durumda olduğu için Value değer 1 ‘dir. Eğer siz bunu disable yapmak isterseniz 0 yapabilirsiniz.

Bir ESXi host üzerinde bulunan virtual machine’lerin memory compression cache size’ini değiştirebilirsiniz. Memory compression işlemi virtual machine’in sahip olmuş olduğu memory’e göre değişkenlik göstereceği için bu size’i yüzdelik olarak ayarlayabilirsiniz. Default olarak compression cache size’i %10’dur. Eğer siz bunu değiştirmezseniz her virtual machine’in memory’sinin %10’unu compress eder. Ozaman şöyle bir örnek verelim; bir virtual machine’inimizin 1GB memory’si bulunuyor. Virtual machine’in compress edilen page’lerini depolamak için 100MB’a kadar ESXi host’un memory’sini kullanabilir. Siz isterseniz bu %10’luk değeri değiştirebilirsiniz. Bunu %20 yaptığınızda yukarıdaki örneğe göre hesaplarsanız 200MB’a kadar ESXi host’un memory’si kullanılabilir.

Bu değeri değiştirmek için aşağıdaki işlemleri yapabilirsiniz.

ESXi host’umuzu seçtikden sonra,

Configure > Advanced Settings

Bölümüne giriş yapıyoruz. Burada aşağıda belirteceğim parametreyi isterseniz filter bölümünden aratıp durumuna hızlıca bakabilir isterseniz de Edit bölümünden değiştirebilirsiniz.

Locate Mem.MemZipMaxPct

Bu değerde herhangi bir değişiklik yapmazsanız %10 kullanım sağlanır. Burada belirteceğiniz parametreler maximum değerlerdir. Siz 5 ile 100 arasında bir rakam belirtebilirsiniz. Bu değer o ESXi host’da bulunan tüm virtual machine’leri kapsayacaktır.

Umarım faydalı olmuştur.

İyi çalışmalar.

email

Bu yazı blog üzerinde Tayfun DEĞER tarafından paylaşılmıştır. 2009 yılında açılan blog kısa zaman içerisinde büyük bir izleyici kitlesine sahip olmuştur.Tayfun DEĞER danışmanlık ve eğitimler vermektedir. vExpert 2013-2015, VCP5, VCP5-DT, VCP-Cloud ve MCSE sertifikalarına sahiptir.Twitter 'dan @tayfundeger veya RSS ile sitedeki değişiklikleri takip edebilirsiniz.

  • Caner Aktaş

    Over commit ederek zaten fiziksel memory den daha fazla memory i dağıtmışken tekrardan bunların üzerinde compress çalıştırıp yine fiziksel memory den yiyecek bu durumda ne kadar sağlıklı olur ?