VMware bellek yönetimi zor bir dengeleyici hareket gibi görünüyor. Küme RAM, Kaynak Havuzları, VMware'in yönetim teknikleri (TPS, balonlama, ana bilgisayar takas etme), konuk içi RAM kullanımı, takas, rezervasyon, hisse ve limit gibi birçok değişken vardır.
Müşterilerin özel vSphere küme kaynaklarını kullandığı bir durumdayım. Ancak, sanal makineleri fiziksel bir donanımdaymış gibi yapılandırıyorlar. Bu da, standart bir VM yapısının 4 vCPU'ya ve 16GB veya daha fazla RAM'e sahip olabileceği anlamına gelir. Küçük yaşta başladığım okuldan (1 vCPU, minimum RAM) geliyorum, gerçek dünya kullanımını kontrol ediyorum ve gerekli ayarları yapıyorum. Ne yazık ki, birçok satıcı gereksinimi ve sanallaştırmaya aşina olmayan insanlar gereğinden fazla kaynak talep ediyor ... Bu kararın etkisini ölçmekle ilgileniyorum.
Bir "problem" kümesinden bazı örnekler.
Kaynak havuzu özeti - Neredeyse 4: 1 azami görünüyor. Balonlu RAM'in yüksek miktarına dikkat edin.
Kaynak tahsisi - En Kötü Durum Tahsisi sütunu, bu VM'lerin kısıtlı koşullar altında yapılandırılmış RAM'lerinin% 50'sinden daha azına erişebileceğini göstermektedir.
Yukarıdaki listedeki en iyi VM'nin gerçek zamanlı bellek kullanım grafiği. 4 vCPU ve 64GB RAM tahsis edildi. 9GB kullanımın altında ortalamaları.
Aynı VM'nin özeti
VSphere ortamlarında kaynakların aşırı kullanımı ve kaynaklarının yapılandırılmasının olumsuz yönleri (özellikle RAM) nelerdir?
VM'lerin daha az RAM'de çalışabileceğini varsayarsak, sanal makineleri gerçekten ihtiyaç duyduklarından daha fazla RAM ile yapılandırmanın ek yükü olduğunu söylemek doğru olmaz mı?
Karşıt argüman nedir: "bir VM'nin tahsis ettiği 16 GB RAM varsa, ancak yalnızca 4 GB kullanıyorsa, sorun nedir? "? Örneğin, müşterilerin VM'lerin fiziksel donanım ile aynı olmadığı konusunda eğitilmeleri gerekir mi?
RAM kullanımını ölçmek için hangi belirli metrik (ler) kullanılmalıdır. Zamana karşı "Aktif" doruklarını takip? "Tüketilen" izleniyor mu?
Güncelleme: Bu ortamı profillendirmek ve yukarıda listelenen küme istatistikleri hakkında biraz bilgi almak için vCenter Operations Manager kullandım . İşler kesinlikle aşırı derecede tamamlanmış olsa da, sanal makineler gereksiz RAM ile o kadar fazla yapılandırıldı ki, gerçek (minik) bellek alanı, küme / ana bilgisayar düzeyinde bellek çekişmesi göstermiyor ...
Benim paket servisim, VM'lerin işletim sistemi düzeyinde önbellekleme için biraz tamponla gerçekten doğru boyutta olmaları gerektiğidir. Cehalet veya satıcı "şartlarının" aşırı verilmesi burada sunulan duruma yol açar. Bellek balonculuğu her durumda kötü görünüyor, çünkü performansın bir etkisi var, bu yüzden doğru boyutlandırma bunu önlemeye yardımcı olabilir.
Güncelleme 2: Bu sanal makinelerin bazıları çarpmaya başladı:
kernel:BUG: soft lockup - CPU#1 stuck for 71s!
VMware, bu konuyu ağır bellek kullanımının bir belirtisi olarak tanımlar . Sanırım bu soruyu cevaplıyor.
vCops "Büyük Boy Sanal Makineler" raporu ...
vCops "Geri Kazanılabilir Atık" grafiği ...