Виртуальная машина Hyper-V зависает со статусом Backing Up
Столкнулся с ситуацией, когда одна из виртуальных машин на сервере Hyper-V зависла со статусом в консоли Hyper-V Manager — Backing up… (как показано на скриншоте). Ни включить, не отключить такую ВМ из консоли Hyper-V Manager при этом невозможно. Самый простой способ победить такую ВМ – перезагрузить хостовую ОС, что не всегда возможно. Я нашел более простой способ.
В том случае, если ВМ зависла в состоянии «backing up…», скорее всего имеется проблема со службой Microsoft Hyper-V VSS Writer на хосте. Откройте командную строку с правами администратора и выполните команду:
vssadmin list writers
Результат должен быть примерно такой, т.е. ошибки VSS должны отсутствовать.
Служба Microsoft Hyper-V VSS Writer работает внутри службы Hyper-V Virtual Machine Management, поэтому для перезапуска устройства VSS и устранения ошибки нам понадобится полностью перезапустить службу Hyper-V Virtual Machine Management. Проще всего это сделать из консоли управления службами services.msc.
Однако в том случае, если служба Hyper-V VSS Writer зависла или не отвечает, придется руками завершить ее процесс (vmms.exe ) из диспетчера задач.
После этого виртуальные машины пропадут из консоли Hyper-V Manager, но появятся снова после запуска службы Hyper-V Virtual Machine Management, а статус backing up… у проблемной ВМ исчезнет.
Как остановить зависшую виртуальную машину на Hyper-V?
Если ваша виртуальная машина, запущенная на хосте Hyper-V зависла по каким-то причинам, перестала отвечать, и не реагирует на кнопки включения, выключения, перезагрузки в консоли Hyper-V, единственный быстрый способ принудительно остановить такую машину — завершить процесс этой ВМ в хостовой ОС. Покажем, как принудительно перезагрузить ВМ в Hyper-V на Windows Server 2016/2019 без перезагрузки всего сервера и запущенных ВМ (если у вас нет HA кластера Hyper-V и Live-Migration).
Виртуальная машина Hyper-V зависла в статусе Stopping, Starting
Итак, предположим, что одна из ВМ на Hyper-V зависла в состоянии Stopping (Stopping-Critical)/ Starting (Starting 10%).
Гостевая ОС перестала отвечать, а кнопки “Turn Off”,” Shut Down” и” Reset” в консоли Hyper-V Manager стали недоступны либо при нажатии возвращают ошибку:
Итак, предположим, что одна из ВМ на Hyper-V зависла, гостевая ОС перестала отвечать, а кнопки «Turn Off», «Shut Down» и «Reset» в консоли Hyper-V Manager стали недоступны либо при нажатии возвращают ошибку:
Ошибка Hyper-V: Connecting to Virtual Machine Management service
Если ваш Hyper-V не отображает виртуальные машины в консоли Hyper-V Manager, возвращая ошибку «Connecting to Virtual Machine Management service«, вам нужно перезапустить процесс vmms.exe (Hyper-V Virtual Machine Management service). Это безопасная операция и не прервет работу запушенных виртуальных машин. Проще всего перезапустить процесс vmms.exe через службу vmms и через консоль services.msc или командой:
Завершение процесса зависшей ВМ с помощью Task Manager
Единственный способ принудительно выключить/ перезапустить такую зависшую виртуальную машину без перезагрузки всего хостового сервера Hyper-V – завершить ее рабочий процесс на гостевой ОС. Все ВМ на хосте Hyper-V запускаются с помощью процесса vmwp.exe (Virtual Machine Worker Process). Для поиска процесса нужно узнать GUID виртуальной машины.
Определить GUID ВМ можно через консоль управления Hyper—V Manager. Откройте настройки сервера (Hyper—V Settings). В разделе Server указано каталог, в котором хранятся конфигурационные файлов ВМ (в нашем примере D:\VMStore).
Откройте этот каталог в File Explorer и найдите каталог с именем зависшей виртуальной машины. Скопируйте GUID, который указан в имени конфигурационного файла ВМ с расширением *.vmcx.
Теперь нужно запустить диспетчер задач (Task Manager) и перейти на вкладку Details. Все виртуальные машины запускаются в рамках собственного экземпляра процесса vmwp.exe. Чтобы определить какой процесс за какую ВМ отвечает, нам нужен полученный ранее GUID зависшей ВМ. Найдите процесс vmwp.exe, у которого в столбце User name указан GUID вашей ВМ. Завершите данный процесс (End Task).
Виртуальная машина будет принудительно остановлена. Теперь вы сможете делать с ней все что угодно.
Сбросить зависшую ВМ на Hyper-V VM с помощью PowerShell
Гораздо проще найти и завершить процесс зависшей виртуальной машины с помощью PowerShell. Запустите консоль PowerShell с правами администратора (учетная запись должна состоять в локальной группе Hyper-V administrators).
В этом случае также нужно завершить процесс ВМ по ее ID. Можно получить GUID ВМ с по ее имени. Например, для ВМ с именем SVM-GUARDEDHOST1, выполните команду:
$VMGUID = (Get-VM «SVM-GUARDEDHOST1»).ID
Если вы не хотите набирать полное имя ВМ, можете вывести список всех ВМ, зарегистрированных на данном хосте Hyper-V:
Get-VM | Select Name, Id
Скопируйте GUID нужной ВМ из полученного списка.
Теперь нужно найди идентификатор процесса (PID) ‘vmwp.exe’ для вашего VMGUID:
Затем с помощью команды Stop-Process нужно принудительно завершить этот процесс:
Stop-Process ($VMWMProc.ProcessId) –Force
Вот так несложно можно принудительно завершить рабочий процесс подвисшей виртуальной машины Hyper-V.
Hyper-V: Не удалось изменить состояние виртуальной машины
Иногда бывает, что даже после завершения зависшего процесса вы не можете включить ВМ и она зависает в статусе Starting с ошибкой:
В этом случае проверьте следующие варианты:
Зависла виртуальная машина hyper v
Общие обсуждения
Все ответы
Какая операционная система установлена на хосте?
Мы учимся всю свою жизнь! И это печально. plus-aliance.ru
Беда такая же, хост система Server 2012R2, гостевая 2008R2
Да и вообще с недавнего времени hyper-v как то медленно работает, виртуалки ели ели останавливаются и запускаются. Раньше все нормально было.
Может какое то обновление было гадкое
Аппаратку описывайте сначала, а потом уже будем думать. +уровень обновления (какой последний rollup установлен)
Roman Levchenko, MCSA, MCITP, MCTS http://www.rlevchenko.com
У меня возникла токае же проблема.
Хост на 2012R2 c Hyper-V, гостевая 2012R2. Виртуальный коммутатор, тип Внешний сеть с разрешенным доступом к сетевому адаптеру (подключён к локальной сети).
На хосте еще есть вторая сетевая карта подключённая к интернету и поднята роль Маршрутизации и удаленного доступа.
Вообще с маршрутизацией на хосте масса проблем, особенно с сетевыми Intel. Засовывайте маршрутизаторы в ВМ, тем более требования к ним минимальные.
По поводу замедления Hyper-V со временем: используйте фиксированные виртуальные диски, или постоянно запускайте дефрагментацию. Динамические начинают тормозить по мере фрагментированния, и очень сильно. Читайте как подключить фиксированный диск ВМ.
Как исправить зависание виртуальной машины Hyper-V в состоянии остановки
Использование виртуальных машин в последнее время резко возросло. Это естественно, если принять во внимание их преимущества. Hyper-V — это собственное программное обеспечение для виртуализации Windows, которое позволяет создавать виртуальные машины в вашей системе Windows. Хотя он не предоставляет столько функций по сравнению с VMware или VirtualBox, он по-прежнему используется довольно часто. Как и у любого другого программного обеспечения, у него есть свои проблемы. Одна из проблем, с которой часто сталкиваются различные пользователи, — это застревание виртуальной машины в состоянии остановки.
Когда это происходит, виртуальная машина отказывается останавливаться, и, следовательно, ее нельзя запустить, чего вы не хотите. Это может произойти по ряду причин, которые мы упомянем ниже. Однако прежде чем мы начнем, важно упомянуть, что иногда проблема просто вызвана устаревшим хост-компьютером Windows. Поэтому, прежде чем начать работу с этой статьей, убедитесь, что вы установили все доступные обновления Windows. С учетом сказанного, давайте начнем.
Теперь, когда мы закончили с возможными причинами проблемы, давайте начнем с методов, с помощью которых вы можете снова восстановить свою виртуальную машину.
Убивая, мы не имеем в виду полностью избавиться от виртуальной машины. Скорее, это означает завершение процесса зависшей виртуальной машины, чтобы вы могли снова запустить ее в обычном режиме. Это довольно простой процесс, если у вас есть одна виртуальная машина, работающая на хост-машине. Если вы это сделаете, вы можете пропустить некоторые из шагов, которые мы собираемся перечислить ниже, которые помогают найти GUID проблемной виртуальной машины.
Для этого следуйте инструкциям ниже:
Метод 2: изменить параметры питания
Как оказалось, параметры питания вашей хост-машины с Windows также могут влиять на состояние ваших виртуальных машин Hyper-V. Один из столкнувшихся с той же проблемой сказал, что изменение дисплея, чтобы никогда не выключаться, решило проблему для них. Таким образом, выстрел стоит того. Вот как это сделать:
Метод 3: отключить RRAS
Неправильно настроенная служба удаленного доступа также может стать причиной проблемы. Как мы уже упоминали ранее, ваш сетевой интерфейс может нарушать работу службы, что приводит к зависанию виртуальной машины. Таким образом, простой способ исправить это — отключить службу маршрутизации и удаленного доступа. Вот как это сделать:
Метод 4: перезагрузите хост-машину
В большинстве случаев проблему как таковую можно легко решить, просто повторно разместив хост-машину. После перезагрузки хост-машины виртуальная машина очистится и запустится нормально. Кроме того, убедитесь, что ваша система обновлена, поскольку проблема также может быть вызвана ошибкой Windows, которая часто исправляется в последующих обновлениях.
Исправлено: виртуальная машина Hyper-V зависала в сохраненном состоянии
Сообщается, что виртуальные машины Hyper-V застревают в сохраненном состоянии. Это происходит в различных сценариях, например, когда вы выключаете виртуальные машины; одна из виртуальных машин может оставаться в сохраненном состоянии, если у вас несколько запущенных. Кроме того, при перезагрузке хост-сервера некоторые виртуальные машины переходят в сохраненное состояние. Теперь, как правило, это не проблема, если виртуальные машины снова включаются в обычном режиме, когда им приказывают сделать это. Однако этого не происходит, и вы остаетесь с виртуальной машиной, которая застряла в сохраненном состоянии.
Hyper-V часто использует сохраненное состояние как метод резервного копирования по умолчанию. Возможно, виртуальная машина застряла при выполнении резервного копирования. Причин, из-за которых это вызвано, не так много, но мы составили список возможных причин, в зависимости от вашего сценария, которые могут вызвать это. Это следующие.
С учетом вышесказанного, теперь мы можем перейти к возможным решениям, которые помогут решить вашу проблему. Итак, приступим.
Метод 1: удалить сохраненное состояние
Первое, что вам нужно сделать в случае зависания сохраненных состояний, — это удалить сохраненное состояние и затем запустить виртуальную машину. Удаление сохраненных состояний не приведет к потере данных, так что вам не о чем беспокоиться. На самом деле он ведет себя так, как будто вы внезапно потеряли питание, и вы сможете сразу загрузиться. Удаление сохраненного состояния настолько просто, насколько это возможно. Следуйте инструкциям ниже, чтобы удалить сохраненное состояние:
Метод 2: проверьте физические диски
Если описанный выше метод не работает за вас, проблема может быть связана с отказом физических дисков. Если вы недавно установили USB-устройство или изменили физические диски виртуальных машин, было бы полезно проверить, не подключены ли физические диски неправильно. Более простой способ убедиться, что все диски работают и перечислены только те диски, которые в данный момент подключены, — это перейти в окно настроек виртуальной машины. Для этого следуйте приведенным ниже инструкциям:
Метод 3: изменить права доступа к папке
Оказывается, иногда проблему можно решить, изменив права доступа к папке на виртуальной машине. Об этом сообщил пользователь, который однажды сам столкнулся с этой проблемой. Если описанные выше методы не решают проблему, вы можете перейти в папку, в которой находится ваша виртуальная машина. Оттуда вам нужно будет изменить разрешение на Все.
Для этого следуйте инструкциям ниже:
Метод 4: удалить виртуальную машину
Если ни одно из вышеперечисленных решений не сработало для вас, единственный оставшийся у вас вариант — удалить виртуальную машину, а затем создать новую. Тем не менее, мы позаботимся о том, чтобы вы не потеряли никаких данных, поэтому это не будет просто избавление от виртуальной машины с данными. Для этого вам нужно сначала скопировать VHD-файл виртуальной машины и где-нибудь сохранить. Давайте рассмотрим всю процедуру поэтапно, чтобы ее было легче выполнить.