Ошибка при перезагрузке виртуальной машины vmware
Ошибка при перезагрузке виртуальной машины vmware
Добрый день! Уважаемые читатели и гости одного из популярных IT блогов рунета Pyatilistnik.org. В прошлый раз мы с вами подробно разобрали тему починки и диагностики интернет соединения. Сегодня мы разберем случай с гипервизором Vmware. У меня есть кластер ESXI 6.5, построенный на серверах Dell R740. На нем крутится приличное количество виртуальных машин. В какой-то из дней приходит оповещение от системы мониторинга, что одна виртуалка перестала отвечать по сети. Зайдя в веб-интерфейс vCenter Server, я обнаружил, что виртуальная машина завислаа и ни на что не реагировала. Давайте разбираться в чем дело и как такое диагностировать.
Описание проблемной виртуальной машины
Как я и писал выше, виртуальная машина намертво зависла, по RDP или ping она была не доступна. Гостевой операционной системой была Windows Server 2012 R2. Попытавшись запустить Web Console из интерфейса vCenter Server, виртуальная машина ни на что не реагировала.
Так же в веб интерфейсе vCenter, у виртуальной машины было предупреждение «Vmware Tools is outdated on this virtual machine». Такое сообщение мы уже видели ранее, при попытке обновления VMware Tools.
Диагностика зависшей виртуальной машины
После того, как операционная система в ней загрузится, я вам советую начать изучение логов Windows. Открываем просмотр событий и делаем поиск ошибок и предупреждений. Мне удалось найти два события, которые косвенно говорили, что проблема с зависанием виртуальной машины связана непосредственно с операционной системой и возможными проблемами с поврежденными системными файлами или драйверами Vmware Tools. Первое событие:
Так же можно обнаружить и ошибки вот такого рода, которые так же заставляю виртуальную машину флапать, зависать с черным экраном.
Данное событие связано с сетевым интерфейсом типа E1000, советую его поменять на паравиртуализованный VMXNET3. E1000 кушает больше ресурсов процессорных мощностей и так же более капризный, но за то не требует установки Vmware Tools.
Так же вы можете посмотреть логи самой виртуальной машины на уровне Vmware ESXI 6.5. Я нашел там вот такую выборку:
Алгоритм действий и возможные причины зависания
Процедура проверки целостности данных может занять некоторое время, по результатам вы увидите были ли ошибки, и удалось ли их исправить. В моем случае утилита sfc смогла определить поврежденные файлы и выполнить процедуру восстановления.
Если ошибки не были устранены, то советую выполнить команду:
Утилита DISM обратится к внешним репозиториям Microsoft и скачает от туда валидные файлы, чтобы восстановить аналогичные в вашей системе. Процесс так же может занимать некоторое время. Как видим:
Еще одним пунктом диагностики проблем с ошибками ID 111 и ID 129, я вам советую выполнить сканирование ваших дисков на предмет ошибок. Для этого есть два варианта, старая добрая утилита командной строки ChkDsk и ее графический аналог в свойствах диска «Проверка диска на наличие ошибок файловой системы»
Для проверки локальных дисков через командную строку, вы можете воспользоваться командой:
Ключ /f указывает утилите исправлять ошибки на диске, флаг /R обязывает CHDSK искать на диске повреждённые сектора, и попытаться восстановить данные на них. Если диск системный, то вас попросят перезагрузиться, и проверка диска будет перед загрузкой системы.
То же самое вы можете сделать и в свойствах локального диска, для этого щелкните по нему правым кликом и перейдите в его свойства. Найдите там вкладку «Сервис» и на ней пункт «Проверка диска на наличие ошибок файловой системы». Нажмите проверить.
В новом окне нажимаем «Проверить диск».
Будет запущен процесс сканирования диска, обычно он занимает не много времени.
После чего вы получите результат. В моем случае я вижу, что «Диск успешно проверен».
Ранее установленный софт
Очень часто причиной зависания виртуальной машины на ESXI 6.5 выступает недавняя установка обновлений в системе или различного рода программного обеспечения. Обязательно посмотрите в «Панель управления\Все элементы панели управления\Программы и компоненты» по дате установки, что недавно было проинсталлировано.
Тут же можно посмотреть установленные обновления. Недавно Microsoft выпустило обновление KB4015553 (Со временем может меняться), которое в Windows Server 2012 R2 стало вызывать зависание. Необходимо удалить KB4015553, kb4019215 и kb4019217, перезагрузить ваш сервер.
Еще могу по своему опыту сказать, в некоторых случаях виртуальная машина с Windows, может зависать из-за антивируса Sumantec Endpoint Protection, вот пример ветки обсуждения на сайте Microsoft (https://social.technet.microsoft.com/Forums/ie/en-US/330179d1-a252-4c0f-962c-6a639ca6b373/windows-server-2012-r2-vmware-vm-freezes-randomly-no-event-logs?forum=winserver8gen или https://communities.vmware.com/thread/535938). Как вариант попробуйте его удалить, или переустановить заново.
Сама компания Symantec рекомендует в ветке (https://support.symantec.com/en_US/article.TECH236543.html) Исключите из проверки следующий каталог, включая все подкаталоги: путь зависит от вашей версии SEP: «C:\ProgramData\Symantec\Symantec Endpoint Protection\ \Data\Definitions». Пример для SEP 14.0 MP1: C:\ProgramData\Symantec\Symantec Endpoint Protection\14.0.2332.0100.105\Data\Definitions. Если вышеуказанное исключение не решает проблему, также исключите следующий каталог: C:\Windows\rescache.
Ошибка при перезагрузке виртуальной машины vmware
Добрый день! Уважаемые читатели и гости блога pyatilistnik.org. В прошлый раз мы с вами разбирали две проблемные ситуации с виртуальными машинами Vmware ESXI, а именно, были найдены пути решения ошибок, при которых виртуалки имели статусы: Unknown VM (Inaccessible) и orphaned, unknown vm. Добавлю в нашу коллекцию статусов, еще один и звучит он вот так Invalid (Unknown). Его вы можете увидеть, как и на отдельном хосте, так и в vCenter, с работающей виртуалкой, так и с удаленной. Ну, что решим эту задачку.
Что означает статус Invalid (Unknown) на VMWare ESXi
Вообще ошибка Invalid (Unknown), очень частая проблема у начинающих системных администраторов и она может появляться по ряду причин:
Сама виртуальная машина, будет прозрачной.
Она может легко работать или быть выключенной. Самое печальное, что вы не сможете ее редактировать, перезагрузить или выключить, средствами Vmware.
Почти все доступные ранее пункты, будут не активны. Ниже мы рассмотрим ситуации, где действия будут свои.
Удаление старой виртуальной машины со статусом Invalid (Unknown)
Если вы обнаружили, что у вас есть старые записи, от не существующей виртуальной машины, по сути мусорная запись и вы хотели бы ее удалить, в виду наведения порядка, то в 99% случаев достаточно выполнить редактирование конфигурационного файла vmInventory.xml. Для этого нам потребуется включить ssh доступ на ESXI хост.
Далее подключаетесь по ssh к ESXI хосту, например, Putty или mRemoteNG. Далее нас интересует файл /etc/vmware/hostd/vmInventory.xml, но перед тем как его отредактировать, я вам советую сделать его резервную копию, например, подключившись по ssh через WinSCP и скопировать его копию, себе на компьютер и во вторых вам нужно получить идентификационный номер (ID), вашей виртуальной машины. Для этого выполните команду
В итоге вам будет показан список всех виртуалок, имеющих статус Invalid (Unknown), будет что-то вроде такого:
Удалить такую виртуальную машину, можно двумя методами.
Так же вы можете все выполнить и без визуального редактора, прямо из окна консоли, для этого выполните команды:
Как только все отредактировали, то вам необходимо перезапустить службы на хосте, с помощью команды:
Ремонт работающей виртуальной машины со статусом Invalid (Unknown)
В ситуации, когда виртуалка работает и хотелось бы вернуть возможность ее редактировать и взаимодействовать из самого ESXI, вы можете выполнить ряд действий, которые устранят статус Invalid (Unknown). Во первых, вы можете попробовать выполнить из консоли ssh, такие команды:
В ESXI 5.5, это выглядит вот так.
Если виртуалка работает и нет возможности ее выключить, перезагружаем ESXI хост. После чего создаем новую виртуальную машину. На этапе «Customize Hardware», где нужно указывать размер ваших ресурсов, удалите стандартно созданный диск, и нажмите кнопку Add. Выберите пункт «Существующий виртуальный диск (Existing Hard Disk).
И добавьте все ваши существующие диски, от прежней виртуальной машины. Запустите ее и проверьте, что все работает.
В ESXI 5.5, это выглядит так же, там нужно выбрать «Use an existing virtual disk».
Как только вы удостоверились, что все в порядке, осталось еще выполнить миграцию этих дисков в папку с виртуальной машиной, чтобы все было в одном месте. Для этого два пути, тупое копирование файлов и заново передобавлять их из конфигурации мастера или же сделать Storage VMotion.
Статус Invalid (Unknown) после потери связи с VMFS хранилищем
То же, очень частая ситуация, когда у вас по ряду причин может отвалиться ваше дисковое хранилище, например ISCSI. Когда доступ восстановился, то виртуалка вполне может иметь статус Invalid (Unknown), в таком случае удалите ее из инвентори (Remove From Inventory). Затем найдите на датасторе вашу виртуалку, щелкните правым кликом по конфигурационному файлу, и зарегистрируйте ее заново (Register VM). Пробуем ее включать.
Исправляем ошибку запуска VMware в Windows 10: VMware Workstation and Device/Credential Guard are not compatible
Месяц не пользовался VMware на своём компьютере. За это время моя Windows 10 обновлялась и судя по всему с одним из обновлений прилетела какая-то фигня, которая внесла определённые настройки в систему и VMware перестала запускать гостевые машины выдавая ошибку «VMware Workstation and Device/Credential Guard are not compatible. VMware Workstation can be run after disabling Device/Credential Guard»
Очередной привет от Microsoft.
На официальном сайте VMware есть решение этой проблемы. но оно на английском языке и немного запутанное, поэтому потренировавшись на своём компьютере и получив положительный результат (всё заработало) решил записать решение в свой блог, так как в будущем оно мне может снова пригодиться, ведь VMware я использую постоянно для различных целей.
Уверен, что данную статью читают грамотные ребята. Однако напомню, что, следуя советам, полученным из статьи, надо помнить, что выполнение описанных в статье операций может привести к неожиданным для вас последствиям. В связи с этим настоятельно рекомендую предварительно создать точку восстановления системы.
Решаем проблему. Открыть командную строку «WIN + R» и ввести команду «gpedit.msc», нажать «ОК».
В открывшемся окне перейти в раздел «Политика Локальный компьютер => Конфигурация компьютера => Административные шаблоны => Система => Device Guard».
Здесь дважды кликаем по пункту «Включить средство обеспечения безопасности на основе виртуализации»:
В открывшемся окне выбираем пункт «Отключено» и нажимаем «ОК»:
Далее перейти в «Панель управления => Программы и компоненты => Включение или отключение компонентов Windows» и отключаем Hyper-V и нажимаем «ОК»:
Компьютер предложит перезагрузиться => отказываемся (перезагрузимся позже).
Запускаем командную строку от имени администратора:
В командной строке выполняем подряд несколько команд:
bcdedit /create <0cb3b571-2f2e-4343-a879-d86a476d7215>/d «DebugTool» /application osloader
bcdedit /set
bcdedit /set <0cb3b571-2f2e-4343-a879-d86a476d7215>loadoptions DISABLE-LSA-ISO,DISABLE-VBS
bcdedit /set hypervisorlaunchtype off
Перезагружаем компьютер.
Теперь запускаем гостевую операционную систему в VMware и наслаждаемся работой.
Читатель «Аноним» от 06.12.2018
Кому не помог этот способ — отключите изоляцию ядра в центре безопасности защитника windows
Читатель «ZZ» от 24.04.2019
Достаточно было выполнить следующую команду: bcdedit /set hypervisorlaunchtype off
Читатель «Аноним» от 09.01.2020
Для перехода назад на Hyper-V, к примеру для Docker, необходимо выполнить следующую команду: bcdedit /set hypervisorlaunchtype auto
Как исправить ошибку VMware «Ошибка включения диска модуля» в Windows
Сообщение об ошибке Module Disk Power on Failed появляется, когда вы пытаетесь загрузить виртуальную машину с помощью любого программного обеспечения VMware. Это сообщение об ошибке обычно указывает на то, что виртуальная машина не выключается безопасно или должным образом, что в результате генерирует указанное сообщение об ошибке. Наряду с указанной проблемой возникает сообщение «Процесс не может получить доступ к файлу, потому что другой процесс заблокировал часть файла», что проливает больше света на то, в чем проблема. По сути, происходит то, что виртуальная машина, которую вы пытаетесь включить, заблокирована другими файлами VMware. Таким образом, из-за этой блокировки виртуальная машина не загружается успешно.
Почему это происходит? Это может произойти, если у вас внезапно отключилось электричество или ваша виртуальная машина не выключилась. Не только это, как выясняется, в некоторых случаях проблема также может быть сгенерирована после того, как ваша виртуальная машина выйдет из строя, и вы попытаетесь снова включить ее. Возникает вопрос: почему виртуальная машина заблокирована или заблокирована? Чтобы пролить свет на это, давайте более подробно рассмотрим, как работают виртуальные машины VMware, а затем перейдем к решению ошибки.
Файлы блокировки VMware
VMware
Следовательно, наличие файла блокировки в основном усиливает тот факт, что указанная виртуальная машина включена. Эти файлы автоматически удаляются при выключении устройства, поэтому при следующем включении устройства у вас не возникнет проблем. Однако в случае сбоя машины или ее неправильного выключения VMware не сможет удалить файлы блокировки, и в результате устаревшая блокировка останется. Когда вы включаете виртуальную машину с устаревшей блокировкой, VMware пытается удалить файл, проверяя два условия, которые в основном определяют, была ли блокировка создана тем же хостом и запущен ли процесс, создавший блокировку.
Ошибка, как в этом случае, выдается, когда любое из этих условий не выполняется и VMware не может удалить файл блокировки. В таком случае вам нужно вручную удалить файлы блокировки самостоятельно, и все будет в порядке.
Удаление файлов блокировки VMware вручную
Как оказалось, вам просто нужно удалить файлы блокировки, которые мешают вам загрузить виртуальную машину. Как мы уже упоминали выше, эти файлы существуют в том же каталоге, что и виртуальная машина, и для их удаления требуется всего несколько простых шагов. Следуйте инструкциям ниже, чтобы удалить их:
Ошибка при перезагрузке виртуальной машины vmware
Всем привет, сегодня хочу поделиться вот такой проблемой, с которой я столкнулся совсем недавно, а именно пропала виртуальная машина vmware. Пропала в прямом смысле слова, вот симптомы, в списке доступных vm она виделась в inventory, но вот самой папки на датасторе не было, просто исчезла, и куда пропала не ясно. Представим себе спокойный вечер администратора, время уже 19 или поболее, все спокойно, все шуршит как нужно, админ собирается домой, но тут приходит смс, о том что лег один виртуальный сервер. Зайдя на vCenter виртуалка была выключена вот с такой ошибкой «Cannot power on virt. File *.vmdk was not foud». Что запуск не возможен с отсутствием диска vmdk. Давайте попробуем разобраться и понять, что случилось и как это исправить.
Вот скриншот, логов полученных в vCenter сервере.
Зайдя в свойства выключенной виртуалки, я обнаружил, что диск весит 0 мегабайт, и как я писал выше этой папки с его дисками и конфигурацией просто не было. Не мудрено почему она не запускалась 🙂
Также нашел вот такой косяк, как оказалось файл виртуального диска лежит на одном луне, а вот конфиг на другом, возможно это тоже повлияло на снятие снапшота и его краш, но это не объясняет пропажу файлов.
Пока искал логи запустил восстановление из бэкапа, продолжаем смотреть логи, находим событие An error occurred while taking a snapshot: msg.snapshot.error-CHECKPOINT
В данной ошибке видно, что сервер резервного копирования виртуальных машин Veeam, не смог сделать снапшот, и логично, файлов виртуалки то нету. Смотрим дальше события по данной vm. Находим, что реально была попытка снятия снапшота, для бэкапирования.
на самом veeam backup & replication лог выглядел вот так, видно, что была попытка сделать snapshot, но положить его было не куда, директории то нет.