Мы сделали что-то глупое, и «клиент настоял» и «нам дали плохой совет» — это не оправдание, но мне не помешала бы помощь в уборке. Задний план:
Мы добавили новый сервер Hyper-V 2019 года в группу из четырех существующих серверов 2016 года, которые реплицируются по всей сети (без использования кластеров или общего хранилища). (Плохой) план заключался в том, что пока мы создали виртуальные машины в 2016 году и не обновили их конфигурацию версии 8, мы могли без проблем реплицировать туда и обратно.
На самом деле произошло то, что он, похоже, повредил файл data.vmcx серверов 2016 года (и, возможно, другие в запутанных структурах, которые Hyper-V хранит для отслеживания машин). На серверах 2016 года виртуальные машины исчезали при перезапуске гипервизора. Попытка реплицировать их снова дала ошибку «уже существует», хотя вы не могли их увидеть. Похоже, это были только машины с конфигурацией 8, у нас было несколько 5, которые, похоже, этого не делали. Или, может быть, это было поколение 2 против поколения 1, не знаю, что вызвало проблему.
В итоге мы обновили 2 из серверов 2016 года до версии 2019 в аварийном режиме, и новый сервер находится в заказе, а два других сервера 2016 года (слишком старые для запуска 2019 года) скоро исчезнут, но продолжают выполнять некоторые незавершенные работы.
ОДНАКО... мы обнаружили сегодня (через дубликат IP), что хотя бы одна виртуальная машина на одном сервере 2016 запущена и работает, но невидима. Он не отображается ни в диспетчере Hyper-V, ни в GET-VM Powershell. Я почти уверен, что он пережил перезагрузку (но не могу проверить эту теорию прямо сейчас).
Пройдет день или около того, прежде чем я смогу отключить последний сервер 2016 года и заставить его исчезнуть.
У меня такой вопрос: есть ли способ (кроме диспетчера GET-VM или Hyper-V) увидеть, какие виртуальные машины работают на сервере Hyper-V 2016? И убить их?
Или сервер 2019 года, если на то пошло... Я думаю, что мы убрали весь мусор в схватке, чтобы обновить их (удалили роль HyperV, удалили всю папку под программными данными для HyperV, переустановили роль Hyper-V), но было бы неплохо подтвердить, что работают только те, которые показаны.
Есть ли процесс, который я могу найти, какой-то файл или запись в реестре для работающих серверов?
Как увидеть работающие виртуальные машины без диспетчера Hyper-V или Get-VM?
И да, настоящим решением было «не делай этого». Я понимаю. Но, «сделав это», есть идеи, как увидеть, что на самом деле работает?