Hyper-V в Windows 8.1: невозможно совместно использовать VHDX между виртуальной машиной и хостом

Hyper-V в Windows 8.1: невозможно совместно использовать VHDX между виртуальной машиной и хостом

Я хотел бы поделиться файлом VHDX, прикрепленным к моей виртуальной машине (Win8.1 также) с хостовой системой. Для этого я включил расширенную функцию в виртуальной машине под контроллером SCSI "активировать общий доступ к виртуальному жесткому диску" (дословный перевод с немецкого).

К сожалению, когда я нажимаю «Применить», я получаю:

Fehler beim Übernehmen von Festplatten Änderungen

Fehler beim Ändern des Geräts "Virtual Hard Disk".

Der Speicher, in dem sich die virtuelle Festplatte befindet, unterstützt die Freigabe virtueller Festplatten nicht. 

Что означает что-то вроде: Хранилище, содержащее файл vhdx, не поддерживает общий доступ. Тогда каким критериям должно соответствовать мое хранилище? Файлы vhdx хранятся на моем SSD NTFS и Basic...

решение1

Theдокументына которые Zoredache ссылается в комментариях, также указывается, что эта функция также предназначена только для совместного использования виртуальных дисков между виртуальными машинами, а не между виртуальной машиной и хостом.

Но если отвечать на ваш вопрос напрямую, то для поддержки этой функции существуют некоторые жесткие требования:

  • Виртуальные диски предназначены для совместного использования другими виртуальными машинами, а не между виртуальной машиной и хостом.
  • Гостевая ОС должна быть 2012/2012R2
  • Виртуальные диски должны располагаться либо на общем томе CSV, либо на общем файловом сервере SMB3, доступном обоим хостам.

решение2

Совместное использование виртуального диска — это не то же самое, что совместное использование файловой системы. Вам нужна общая файловая система. Если вы хотите этого, включите общий доступ к файлам на одной или другой машине, а затем используйте файлы через сеть.

Если вы используете виртуальный диск совместно с двумя ВМ (что, как отметили другие, может произойти только тогда, когда VHDX хранится в кластерной файловой системе), вам необходимо использовать кластеризацию внутри группы ВМ для арбитража доступа к диску, чтобы различные ВМ не затирали записи блоков друг друга на диск и не повреждали файловую систему на виртуальном диске. Для этого в значительной степени требуется кластерное программное обеспечение, работающее в наборе гостевых ВМ, что является причиной того, что эта функция вообще не работает в Windows 8.1, даже внутри ВМ.

На самом деле возможно, что более одной виртуальной машины будут одновременно писать на общий VHDX. Вы можете включить файловую систему CSV в гостевом кластере, и это позволит нескольким узлам кластера писать одновременно, пока запись происходит в файлы, которые уже существуют на диске, и в области файлов, которые уже существуют. Это имеет смысл для таких рабочих нагрузок, как SQL Server, использующий файловый сервер в качестве внутреннего хранилища. Для других рабочих нагрузок имеет смысл избегать CSV и позволять одной виртуальной машине использовать диск за раз. Кстати, кластер файлового сервера Windows по-прежнему будет высокодоступным, поскольку одна виртуальная машина может выйти из строя, не прерывая файловую службу. Право собственности на диск плавно перейдет к другому члену кластера файлового сервера.

Это, кстати, указывает на причину, по которой общий VHDX должен быть на CSV на уровне хостинга. Вся эта функция не имеет смысла, если общий VHDX не находится на хранилище, которое не имеет единой точки отказа.

Связанный контент