none
VMs not restarting properly in Server 2016

    Question

  • I have several VMs running in Hyper-V on Server 2016 that we shutdown remotely and then reboot the host. They're all configured to automatically restart upon the host's reboot, with a startup delay varying between 30 and 600 seconds (each VM is different). 

    SOME of the VMs will happily restart.  SOME of the VMs do not start at all.

    Looking in the Hyper-V event logs, there are absolutely no errors or complaints logged at all. It's as if it never even tries to restart those VMs. 

    We're not doing anything weird storage-wise; all VMs are using the same HDD storage area. We're well within the available RAM of the host machine (128GB). There's nothing odd about their boot options. Several of these VMs are identically configured to each other, and one will start while the other won't. 

    What in the world is going on?

    Sunday, December 24, 2017 3:53 PM

All replies

  • What do you mean when you say that your VMs won't start ? Is it on the Hyper-V interface (no poweron ?) or when the OS boot ?
    Sunday, December 24, 2017 4:59 PM
  • Hi jdsok,

    1. What are the OS of the VMs that do not start up automatically with "Automatic start Action" configured?

    2. Do you patched the Host and the VMs with the latest windows update, if not, please install updates on them;

    3. Please check the Hyper V VMMS event log, check what logs are recorded during the startup process;

    In additional, When the Hyper-V Server is restarted, the following events occur:

    1.Hyper-V initializes hypervisor code on the hardware.
    2.Hypervisor creates virtual environment.
    3.After creating the Virtualization environment, the control is returned to the Parent Partition.
    4.The Parent Partition, in turn, returns the control to its component called VMMS.exe or Hyper-V Virtual Machine Management Service.
    5.VMMS.exe is a multi-threaded application. It can initialize and start a virtual machine and get the control back to initialize and start other virtual machines. VMMS.exe does not have to wait for the virtual machine to be up and running before starting the next one. VMMS.exe performs two operations for a virtual machine at start up; (1) initialize the virtual machine to make sure its VHD files and configuration files are intact and (2) Start the virtual machine.
    6.VMMS.exe initializes and starts the virtual machines based on the following logic:
    Filter all the virtual machines which are set to always start automatically or using “Always start this virtual machine automatically” option.
    Filter all the virtual machines which have been configured with “Automatically start if it was running when the service stopped” option.
    Get the “Startup Delay” value for the virtual machines which are using above two options.
    Get all the virtual machines which are using “Nothing” option.
    Once VMMS.exe has the list of virtual machines, it performs the following logic to start these virtual machines: Start all the virtual machines for which “Startup Delay” is set to ZERO. That means do not wait for seconds to elapse and start the virtual machines immediately.
    Initialize all the virtual machines for which “Startup Delay” is set to a value other than ZERO and wait for the seconds to elapse before starting the virtual machines.
    Initialize all other virtual machines which are using “Nothing” option but do not start them.

    Best Regards,

    Anne


    Please remember to mark the replies as answers if they help.
    If you have feedback for TechNet Subscriber Support, contact tnmff@microsoft.com.

    Monday, December 25, 2017 7:58 AM
    Moderator
  • 1. This happens every time the host server is rebooted, and it's a different random assortment of VMs every time (it's not consistent). VM OSes are 2012R2, 2016, and ubuntu. 

    This happens on both of our Server 2016 Datacenter hypervisors. Our 2012R2 hosts do not have this problem.

    2. Yes, all are fully up to date.

    3. I've looked at all of the logs on the host, and I see the successful VMs being initialized and started. The unsucceesful VMs have no errors logged (nothing logged at all, like they don't even exist). 

    I thought at first it was tied to the startup delay, but that doesn't seem to matter either, as some VMs with longer delays started up just fine, along with VMs with shorter delays than the rest. 

    Last week (last reboot), only 3 out of 16 of my VMs didn't restart. This week, it was 7 out of 16. (Across two different 2016 Servers, 8 VMs on each, servers were installed and configured identically, all hardware is identical too.)  There were only 2 VMs that didn't start up both weeks. (Some didn't restart last week, but did this week, and vice versa.)

    Without any errors in the hyper-v logs, I'm at a loss.

    Tuesday, December 26, 2017 3:19 AM
  • Hi jdsok,

    Since it is a random number of VMs that not start up automatically and there's no error log recorded, it's hard for forum guys to guess the cause and troubleshoot. If you want to get better help, it's recommended to open a case with MS, so that they can have more channel to access your environment and do further research, here is the link to open a case with MS:

    https://www.microsoft.com/en-us/worldwide.aspx

    Best Regards,

    Anne


    Please remember to mark the replies as answers if they help.
    If you have feedback for TechNet Subscriber Support, contact tnmff@microsoft.com.

    Thursday, December 28, 2017 7:39 AM
    Moderator
  • I have the same exact problem with TWO hyper-v 2016. After reboot, VM (Win 2012) do NOT start! It's an hell after every win update...

    Wednesday, May 16, 2018 7:41 AM
  • Same situation here.

    Any updates on this? A possible solution?

    with best regards

    B


    bostjanc

    Thursday, June 14, 2018 8:03 AM