Chúng tôi đã làm điều gì đó ngớ ngẩn, và "khách hàng khăng khăng" và "chúng tôi nhận được lời khuyên tồi" không phải là lý do bào chữa, nhưng tôi có thể nhờ người giúp dọn dẹp. Lý lịch:
Chúng tôi đã thêm một máy chủ Hyper-V 2019 mới vào nhóm bốn máy chủ hiện có của năm 2016 sao chép khắp mạng (không liên quan đến cụm hoặc bộ nhớ dùng chung). Kế hoạch (xấu) là miễn là chúng tôi đã tạo VM vào năm 2016 và không nâng cấp từ phiên bản cấu hình 8 của chúng, chúng tôi có thể sao chép qua lại mà không gặp sự cố.
Điều thực sự đã xảy ra là dường như nó đã làm hỏng tệp data.vmcx của máy chủ năm 2016 (và có thể cả những tệp khác trong cấu trúc phức tạp mà Hyper-V giữ để theo dõi máy). Trên các máy chủ năm 2016, VM sẽ biến mất nếu Hypervisor khởi động lại. Cố gắng sao chép chúng một lần nữa đã gây ra lỗi "đã tồn tại" mặc dù bạn không thể nhìn thấy chúng. Có vẻ như chỉ có các máy Cấu hình 8, chúng tôi có một số máy 5 dường như không làm được điều này. Hoặc có thể đó là Gen 2 vs Gen 1, không chắc điều gì đã gây ra sự cố.
Cuối cùng, chúng tôi đã nâng cấp 2 trong số các máy chủ của năm 2016 lên 2019 ở chế độ khẩn cấp và một máy chủ mới đang được đặt hàng, còn hai máy chủ còn lại của năm 2016 (quá cũ để chạy trong năm 2019) sẽ sớm ngừng hoạt động nhưng vẫn có một số công việc đang tiến hành.
TUY NHIÊN... hôm nay chúng tôi đã phát hiện ra (thông qua một IP trùng lặp) rằng ít nhất một VM trên một máy chủ 2016 đang hoạt động, nhưng vô hình. Nó không hiển thị trong trình quản lý Hyper-V cũng như trong GET-VM của Powershell. Tôi khá chắc chắn rằng nó vẫn tồn tại sau khi khởi động lại (nhưng không thể kiểm tra lý thuyết đó ngay bây giờ).
Sẽ mất khoảng một ngày trước khi tôi có thể tắt nguồn máy chủ cuối cùng của năm 2016 và khiến nó biến mất.
Câu hỏi của tôi là: Có cách nào (không phải là trình quản lý GET-VM hoặc Hyper-V) để xem máy ảo nào đang chạy trên máy chủ Hyper-V 2016 không? Và giết họ?
Hoặc một máy chủ năm 2019 cho vấn đề đó.... Tôi nghĩ rằng chúng tôi đã xóa tất cả rác trong cuộc tranh giành để nâng cấp chúng (đã xóa vai trò HyperV, xóa toàn bộ thư mục trong dữ liệu chương trình cho HyperV, cài đặt lại vai trò Hyper-V), nhưng thật tuyệt nếu xác nhận rằng chỉ những cái được hiển thị đang chạy.
Có quy trình nào tôi có thể tìm kiếm, một số tệp hoặc mục đăng ký cho các máy chủ đang chạy không?
Làm cách nào để xem máy ảo đang chạy mà không có trình quản lý Hyper-V hoặc Get-VM?
Và vâng, giải pháp thực sự là "đừng làm vậy". Tôi hiểu rồi. Nhưng đã "làm chuyện ấy" thì làm sao biết được cái gì đang thực sự chạy?