Dynamic Memory özelliği, W2K8 R2 Sp1 ile gelen bir özelliktir. VM’ler için atadığımız RAM miktarının, kullanılmayan RAM havuzunda tutulduğu ve Dynamic Memory ataması yaptığımız makinenin RAM ihtiyacı olması durumunda bu havuzdan otomatik olarak ihtiyacı olan RAM miktarını kullanmasına Dynamic Memory adı verilmektedir.
Bir örnek ile açıklayacak olursak;
Diyelim ki 4 adet vm’e sahibim.
İstanbul– Adana- Ankara – Kayseri,
-
İstanbul makinesi için başlangıç RAM miktarı 1024 mb, Maximum RAM ise 4096
-
Adana makinesi için ise başlangıç RAM miktarı 512 mb, Maximum RAM miktarı ise 2048
-
Ankara makinesi için ise başlangıç RAM miktarı 2048,Maximum RAM miktarı ise 4096
-
Kayseri, makinesi için ise başlangıç RAM miktarı 256, Maximum RAM miktarı ise 1024
Ankara makinesi genelde 2500-2600 mb arasında RAM kullanıyor ve yaklaşık 1500 mb civarında RAM boştadır.
Kayseri, makinesi de genelde 300 Mb civarında RAM kullanmaktadır. Dolayısıyla da burada yaklaşık 700 mb civarında boşta RAM bulunmaktadır.
Bu iki makinede kullanılmayan RAM miktarı bir RAM havuzunda toplanıp, İstanbul– Adana- Ankara – Kayseri, makinelerimden birinin ihtiyacı olması durumunda ilgili makine tarafından üzerine çekilerek kullanılcaktır. Böylece RAM ihtiyacı oluştuğunda vm’ler sıkıntı yaşamadan çalışmalarını sürdürecektir.
Dynamic Memory özelliğini kısaca anlattıktan sonra HyperV 2 ve 3 arasındaki Dynamic Memory farklılıklarını tespit edebiliriz.
HyperV 2 – HyperV 3 Dynamic Memory Karşılaştırması
Yeni bir vm oluşturken makine için RAM miktarını ayarlayabiliyoruz. Bu makineyi başlattığımda 512 MB RAM makine tarafından reserver edilecek ve bu makine tarafından kullanılmaya başlanacak. Bu da demek oluyor ki RAM havuzumdan 512 Mb azalacak. HyperV 2 üzerinde bunun anlamı vm’i başlatmadan vm ayarlarından Dynamic Memory değerlerini düzenlememiz gerektiğiydi.
Oysa HyperV 3’te aynı ekranda Use Dynamic Memory for this virtual machine ile Dynamic Memory seçeneğini bu ekranda aktifleştirebilme imkanımız bulunmaktadır.
HyperV 2 üzerinde vm kapalı durumdayken RAM kullanımını static olarak ya da dynamic olarak belirleyebiliyoruz. Ancak iki seçeneği bir arada kullanma şansımız bulunmuyor.
Aynı durumu HyperV 3 üzerinde inceleyecek olursak Startup RAM seçeneği ile makinemizn açılış sırasında servislerin daha hızlı aktif hale gelmesi için 1024 Mb RAM ataması yapıp makine açıldıktan sonra ise Dynamic Memory özelliği ile de makinenin normal çalışması sırasında ihtiyacı olan RAM miktarı 768 MB olabilir. Böylece makine başladıktan sonra boşta kalan RAM miktarı , RAM havuzuna aktarılacak ve Dynamic Memory özelliği aktif olan vm’ler için gerektiğinde kullanılmak üzere bekleyecektir.
HyperV 2 üzerinde vm’lerimiz çalışır durumda iken belirlediğimiz RAM miktarını değiştirme gibi bir seçeneğimiz bulunmuyordu. Bu işlemi gerçekleştirebilmek için VM’i kapatıp RAM miktarını belirleyip tekrar açıyorduk. Tabii bu da hem zaman hem iş kaybı anlamına geliyordu.
HyperV 3’te ise vm’lerimiz çalışırken Dynamic Memory miktarını azaltma ve arttırma gibi işlemleri gerçekleştirebiliyoruz. Bu da zaman ve iş kaybı yaşamamız gibi durumları ortadan kaldırıyor.