{"id":10867,"date":"2010-09-18T17:59:46","date_gmt":"2010-09-18T17:59:46","guid":{"rendered":"https:\/\/aidanfinn.com\/?p=10867"},"modified":"2010-09-18T17:59:46","modified_gmt":"2010-09-18T17:59:46","slug":"how-many-virtual-machines-on-a-dynamic-memory-host","status":"publish","type":"post","link":"https:\/\/aidanfinn.com\/?p=10867","title":{"rendered":"How Many Virtual Machines on a Dynamic Memory Host?"},"content":{"rendered":"<p>I\u2019ve seen people asking what the VM capacity of a Hyper-V host would be with dynamic memory enabled on the virtual machines.&#160; Well \u2026 that depends.<\/p>\n<p>I can visualise virtual machines being configured in 3 ways:<\/p>\n<ol>\n<li><strong><u>Disabled<\/u><\/strong>: That means virtual machines will be set up with static memory.&#160; You configure the VM with 2 GB of RAM and it will consume 2 GB of RAM \u2026 plus up to 32 MB of overhead for the 1st 1 GB and up to 8 MB overhead RAM for each additional GB after that.&#160; I can see this being used where users of VM\u2019s (for billing reasons) or applications (for specification verification reasons) expect to see the full allocation of RAM.<\/li>\n<li><strong><u>Optimized<\/u><\/strong>: You will set up the start up RAM setting to be the minimum required for the virtual machine\u2019s guest operating system (and I recommend including the amount required for normal operations) and the maximum RAM to be what is required to deal with peak usage.&#160; For example, a W2008 R2 web server might be set up to boot up with 2 GB start up RAM and with 4 GB maximum RAM.&#160; This will probably be the most common configuration.<\/li>\n<li><strong><u>Maximized<\/u><\/strong>: I think this will be a niche configuration.&#160; In this scenario the virtual machine is set up with a start up RAM setting as with the optimized approach.&#160; However, the maximum RAM setting will be set up to be the maximum that a virtual machine or the host can support.&#160; For example, a 32 GB host can realistically support a virtual machine with 29 GB RAM.&#160; And remember that a Hyper-V virtual machine can support up to 64 GB RAM.&#160; This is a more elastic computing approach where you need to ensure that virtual machines can get as much memory as they need.&#160; Just be wary that some applications will eat up whatever you supply either because of memory leaks or bad development practices.<\/li>\n<\/ol>\n<p>The disabled approach is pretty easy to calculate.&#160; Just use my previously shared <a href=\"https:\/\/aidanfinn.com\/downloads\/Hyper-VCalculator.xls\" target=\"_blank\">spreadsheet<\/a>.&#160; My rule of thumb is take the physical memory of the host, subtract 3 GB RAM and what remains is what you typically have for virtual machines.&#160; You\u2019ll want to allow for more than 3 GB on <em>huge<\/em> hosts.<\/p>\n<p>It gets a little more difficult with Dynamic Memory enabled.&#160; To be honest, I think it\u2019s going to be a hell of a lot more difficult to size hardware or determine host capacity.&#160; Just how do you know how much memory is required for virtual machines with a variable amount of memory if you don\u2019t already have them to monitor?&#160; You can use the performance metrics results of a MAP (or other) assessment (you should always do an assessment at the start of your Hyper-V project) to figure out the average memory utilisation of the machines that you are going to convert into Hyper-V virtual machines.&#160; Sum up the averages, maybe add a percentage and bingo; that will give you an idea of how to size the RAM of your host hardware.<\/p>\n<p>It gets even more complicated if you mix your virtual machine configuration types.&#160; Some might be set up with static memory, some with Dynamic Memory set up in what I\u2019ve called optimized and\/or maximized configurations.&#160; Calculating the host capacity is now going to be very complicated.&#160; You\u2019re getting into spreadsheet country.<\/p>\n<div style=\"padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px\" id=\"scid:0767317B-992E-4b12-91E0-4F059A8CECA8:0e6af62c-5d54-478b-9185-fe14d6c41a8f\" class=\"wlWriterEditableSmartContent\">Technorati Tags: <a href=\"http:\/\/technorati.com\/tags\/Hyper-V\" rel=\"tag\">Hyper-V<\/a>,<a href=\"http:\/\/technorati.com\/tags\/Virtualisation\" rel=\"tag\">Virtualisation<\/a>,<a href=\"http:\/\/technorati.com\/tags\/Windows+Server+2008+R2\" rel=\"tag\">Windows Server 2008 R2<\/a><\/div>\n","protected":false},"excerpt":{"rendered":"<p>I\u2019ve seen people asking what the VM capacity of a Hyper-V host would be with dynamic memory enabled on the virtual machines.&#160; Well \u2026 that depends. I can visualise virtual machines being configured in 3 ways: Disabled: That means virtual machines will be set up with static memory.&#160; You configure the VM with 2 GB &hellip; <a href=\"https:\/\/aidanfinn.com\/?p=10867\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;How Many Virtual Machines on a Dynamic Memory Host?&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_uf_show_specific_survey":0,"_uf_disable_surveys":false,"footnotes":""},"categories":[20],"tags":[181,195,117],"class_list":["post-10867","post","type-post","status-publish","format-standard","hentry","category-hyper-v","tag-hyper-v","tag-virtualisation","tag-windows-server-2008-r2"],"aioseo_notices":[],"jetpack_featured_media_url":"","amp_enabled":true,"_links":{"self":[{"href":"https:\/\/aidanfinn.com\/index.php?rest_route=\/wp\/v2\/posts\/10867","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/aidanfinn.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/aidanfinn.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/aidanfinn.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/aidanfinn.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=10867"}],"version-history":[{"count":0,"href":"https:\/\/aidanfinn.com\/index.php?rest_route=\/wp\/v2\/posts\/10867\/revisions"}],"wp:attachment":[{"href":"https:\/\/aidanfinn.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=10867"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/aidanfinn.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=10867"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/aidanfinn.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=10867"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}