OpenVZ ile sanallaştırılmış VPS’lerde, hosting firması VPS ile gelen RAM miktarını MB/GB cinsinden belirtirler. (Ör: 256MB / 512 burstable) Böyle bir durumda beklentiniz şu olmalıdır:
- Sanal makineniz için size ayrılmış daimi 256MB’lık RAM
- RAM dolduğu zaman kullanılabilecek ancak swapin/swapout olabilecek (bu da yavaşlık anlamına gelir) 256MB daha. (Toplam 512MB)
Ancak gerçekte böyle mi?
Hosting firmanız, bir fiziksel sunucuyu haddinden fazla sanal sunucu ile yükleyerek gerçekte sadece size ait olması gereken RAM alanını da paylaştırıyor olabilir mi? Bunu kontrol paneli, top gibi kalsik yöntemlerle öğrenmeniz mümkün değil.
Ancak şu kaynakta bunun bir şekilde öğrenilebileceği belirtiliyor.
Aşağıdaki kodu çalıştırın:
sudo cat /proc/user_beancounters | grep -E '(uid|physpages|oomguarpages)'
Şöyle bir çıktı gelecektir:
root@vps:~# sudo cat /proc/user_beancounters | grep -E '(uid|physpages|oomguarpages)' uid resource held maxheld barrier limit failcnt physpages 217899 524384 0 524288 0 oomguarpages 181208 277135 9223372036854775807 9223372036854775807 0
held kolonunda physpages ve oomguarpages satırlarında yer alan rakamlar farklı ise normalde RAM’de saklanması gereken bazılarının diske gitmiş demektir! (swapping) Şu an benim VPS firmamın da aynısını benim hostingime yaptığımı görüyorsunuz.
Tam olarak kaç MB’ın swap-out ettiğini görmek için aşağıdaki formülü kullanın:
(physpages - oomguarpages) * 4096 / 1024 / 1024
Benim VPS’im için bu değer:
(217899 - 181208) * 4096 / 1024 / 1024 = 143MB!
Bu da bana vaadedilen 2GB’lık RAM’in %7’sinin aslında bana verilmediği anlamına gelir. Ancak o an kullanımda olan RAM/SwapOut RAM yüzdesi daha mantıklı bir istatistik sağlayacaktır:
Kullanılan RAM: 217899 * 4096 / 1024 / 1024 = 851MB Swap-out RAM: 143MB
Bilgilerimin %16’sı olması gereken yerde, RAM’de durmuyor.
Bitirirken
Acaba sizin VPS sağlayıcınız da aynı çakallığı yapıyor mu?
OpenVZ Görünen RAM vs. Gerçek RAM 3 yorum aldı.
Yapmıyor… Sağolsun. 🙂
Merak ettiğim şu, (varsayım) 16GB lık bir dedicated sunucum var ve sanallaştırmak istiyorum. En kestirme yol olarak openvz ile linux konteynırları yaratıyorum. Her konteynır için atadığım işlemci yükü ve bellek alanı kısıtlamaları var. Buraya kadar eyvallah. Peki, bu sunucular için atadığım vswap alanları da ortak mı? Yani işin matematiğine inersek daha net olacak.
16GB toplam RAM ile (master-dedicated sunucunun ihtiyaçlarını göz önünde bulundurarak)
15x1GB konteynırlar oluşturup, geri kalan 1GB'lık alanı her konteyner için ortak bir vswap alanı olarak mı kullanıyorum?
YOKSA her konterynır için o konteynıra özel vswap alanları mı (tahsil etmem)oluşturmam gerekiyor? (Eğer böyleyse vswap olayı tamamen lafta kalmış oluyor.)
Eğer önümde bir openvz paneli olsaydı bunu deneyerek öğrenebilirdim. Maksadım sizi "evet ya, o nasıl oluyo acaba?" diye düşündürmek ve zahmete sokmak. 😛
Güzel blog.
Sevgiyle.
Valla elinize klavyenize sağlık ne güzel sormuşsunuz, ben de merak ettim ama bu konu hakkında fikrim olmadığı gibi, deneyecek bir ortamım da yok. Gerçekten de "evet ya, o nasıl oluyo acaba?" diye düşündürttünüz. 😀
Yakında bir dedicated sunucu geçecek elime. Openvz ile sanallaştıracağım. Sırf o yüzden bu başlığı yer imleri çubuğunun başında tutuyorum. Cevap bulur bulmaz sizi de aydınlatacağım.
Açıkçası bu soruyu sorarak kendime orta açmış oldum, golü atınca hep birlikte seviniriz. 🙂
Sevgiyle.
Almanya’dan kalıcı oturuma izni (niederlassungserlaubnis) nasıl alınır?
Almanya’da nasıl ehliyet aldım?
Harici monitör parlaklığı klavye ile nasıl değiştirilir?
‘de, da’ eki nasıl yazılır?
Almanya’da nasıl ehliyet aldım?
Bir şirket neden uzaktan çalışmaya (remote working) izin verir?
-de -da eki ne zaman ayrı yazılır?
Almanya’ya gelmek için yapılan bürokratik işlemler