Forum Discussion

SamSKG's avatar
SamSKG
Copper Contributor
Jul 08, 2019
Solved

Hyper-V server 2019 - Max RAM for guest limited to 12 GB?

Hi,

I am trialling Hyper-V server 2019. The server is HP Proliant ML30 Gen 10 with 32 GB RAM. When I check the RAM in the Hyper-V server it shows 32 GB (with systeminfo). 

However when I try to create a VM (Gen 1 or 2) the maximum RAM I can allocate is 12 GB (12,582,912‬). What am I doing wrong here? or is this a limitation with the free Hyper-V servevr 2019?

 

SamSKG.

  • Pretty sure the wizard is in MB, so 12GB would be 12,288 in the wizard. Other option is to provision the VM and then change the settings with PowerShell

8 Replies

  • CorpCale CEO's avatar
    CorpCale CEO
    Copper Contributor

    SamSKG the issue is related to dynamic memory allocation and memory buffer. in order to resolve completely you'll have to assign each VM its own dedicated RAM and turn off dynamic memory so the system doesn't keep RAM back and allocate it to the other VM's and itself. You also have to have in mind system resource for the server itself and memory weight allocation.

     

    This is a big topic however for simplicity of explanation try this? take half of your VMs and assign them dedicated ram (i would do all), then try adding more ram to the VM in question and you'll see that there is memory free to allocate with no cap. As the system is not hogging ram for other VM's as your no longer using memory buffers and dynamic memory, so the system doesn't have to hold reserves just in case.

     

    i had the same issue with 40GB RAM and resolved it by doing away Dynamic Memory altogether and every VM has dedicated ram assigned. e.g. if you have a SQL server and 1TB of RAM then sure use dynamic memory on that one VM. e.g. Give it a high memory weight and Min 100GB to Max Ram at 512GB because this server needs memory and when its not crunching quires it will settle at 100GB and if it needs vast amount then it can pull from the reserves you've specified in Dynamic Memory, which is more then enough without compromising the other VMs, as there all static assign. (yes, this example is over kill for most people)

     

    The system will not fluctuate from this static allocation of memory so it know what it has to use and anything free is fair game to use. this gives you more overhead for other VMs and the system itself.

     

    Hope this helps and keep us posted, God speed

     

    this image below is one of my servers. as you see RAM is 2GB and dynamic is turn off and even though i assigned 2GB in the dynamic memory allocation this wa causing the issues and the system we constantly reading this for all VMs and was hogging RAM based on this for all VM's. So I turn off DM on all VM's and now i have no issues.

    • SamSKG's avatar
      SamSKG
      Copper Contributor

      CorpCale CEO Thanks a lot for the detailed answer. My issue was that in fact I had no issue. I just did not pick up that the maximum was in MBs. Just because the number was big I though it was 12 GB but in fact it is 12 TB. This is even more confusing as a VM can't support 12 TB RAM!!

      Anyway thanks for you reply!!

      • CorpCale CEO's avatar
        CorpCale CEO
        Copper Contributor

        SamSKG thanks for the update much appropriated. I hopefully this will give you some insight into memory allocations in balancing your hyper-v resources for future reference. feel free to ask any question and i'll help if i can. I love hyper-v and i'm using the 2019 DC edition which i'm testing containers on, however not sure if hyper-v server 2019 supports this has 2016 didn't hence i upgraded to full server with server core install. maybe this is something to consider if your going down the docker or windows containers route at some point from a windows perspective.

         

        actually when you get a chance could you do a Get-WindowsFeature and see if containers appear in the list on windows hyper-v server 2019, thanks 

  • SamSKG what error messages do you get?
    How are you setting this? Windows Admin Center, Powershell or Hyper-V manager?
    • SamSKG's avatar
      SamSKG
      Copper Contributor

      NZ_BenThomas  Hi Ben, No error messages. Setting it up through Hyper-V manager and in the create VM wizard simply it wont accept anything above 12GB for Guest RAM. on the wizard the upper limit is shown as 12 GB (12,582,912). 

      But when I checked with systeminfo on the hyper-v sever cmd it shows 32GB RAM 

      • Pretty sure the wizard is in MB, so 12GB would be 12,288 in the wizard. Other option is to provision the VM and then change the settings with PowerShell

Resources