Создание пользовательской коллекции виртуальных машин

Windows 10 Fall Creators Update и более поздних версий.

В Fall Creators Update краткое создание развернуто, чтобы включить коллекцию виртуальных машин.

Быстрое создание коллекции виртуальных машин с пользовательскими образами

Хотя существует набор образов, предоставляемых партнерами Майкрософт и Майкрософт, коллекция также может перечислить собственные образы.

Сведения об этой статье:

  • создание виртуальных машин, совместимых с коллекцией.
  • создание источника коллекции.
  • добавьте в коллекцию пользовательский источник коллекции.

Коллекция виртуальных машин — это графическое представление для набора источников виртуальных машин, определенных в реестре Windows. Каждый источник виртуальной машины — это путь (локальный путь или URI) к JSON-файлу с виртуальными машинами в качестве элементов списка.

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

Архитектура коллекции

Раздел реестра: Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Virtualization

Имя значения: GalleryLocations

Тип: REG_MULTI_SZ

Виртуальные машины в коллекции могут быть образом диска (.iso) или виртуальным жестким диском (VHDX).

Виртуальные машины, сделанные на виртуальном жестком диске, имеют несколько требований к конфигурации:

  1. Создано для поддержки встроенного ПО UEFI. Если они создаются с помощью Hyper-V, это виртуальная машина поколения 2.
  2. Виртуальный жесткий диск должен быть не менее 20 ГБ. Учитывайте, что это максимальный размер. Hyper-V не будет использовать виртуальную машину активно.

Тестирование нового образа виртуальной машины

Коллекция виртуальных машин создает виртуальные машины с помощью того же механизма, что и установка из локального источника установки.

Чтобы проверить, будет ли образ виртуальной машины загружаться и выполняться:

  1. Откройте коллекцию виртуальных машин (Hyper-V быстрое создание) и выберите локальный источник установки. Снимок экрана: кнопка
  2. Выберите "Изменить источник установки". Снимок экрана: кнопка
  3. Выберите .iso или VHDX, которые будут использоваться в коллекции.
  4. Если образ является образом Linux, отключите параметр безопасной загрузки. Снимок экрана: включение безопасной загрузки Windows в диалоговом окне
  5. Создание виртуальной машины. Если виртуальная машина загружается правильно, она готова к коллекции.

Следующим шагом является создание нового источника коллекции. Это JSON-файл, который перечисляет виртуальные машины и добавляет все дополнительные сведения, которые вы видите в коллекции.

Текстовые сведения:

Расположения текста в коллекции с метками

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

  • publisher — обязательный

  • description — обязательный — список строк, описывающих виртуальную машину.

  • версия — обязательный

  • LastUpdated — по умолчанию — по умолчанию — понедельник, 1 января 0001 г.

    Формат должен быть: гггг-мм-ддThh:mm:ssZ

    Следующая команда PowerShell предоставит текущую дату в правильном формате и поместит ее в буфер обмена:

    Get-Date -UFormat "%Y-%m-%dT%TZ" | clip.exe
    
  • языковой стандарт — значение по умолчанию — пустое.

Живопись:

Расположения рисунков с метками

  • логотип — обязательный
  • символ
  • Миниатюру

И, конечно, виртуальная машина (.iso или VHDX).

Чтобы создать хэши, можно использовать следующую команду PowerShell:

Get-FileHash -Path .\TMLogo.jpg -Algorithm SHA256

Приведенный ниже шаблон JSON содержит начальные элементы и схему коллекции. Если изменить его в VSCode, он автоматически предоставит IntelliSense.

{
    "$schema": "https://raw.githubusercontent.com/MicrosoftDocs/Virtualization-Documentation/live/hyperv-tools/vmgallery/vm-gallery-schema.json",

    "images": [
        {
            "name":  "",
            "version":  "",
            "locale":  "",
            "publisher":  "",
            "lastUpdated":  "",
            "description":  [
                ""
            ],
            "disk":  {
                "uri":  "",
                "hash":  ""
            },
            "logo":  {
                "uri":  "",
                "hash":  ""
            },
            "symbol":  {
                "uri":  "",
                "hash":  ""
            },
            "thumbnail":  {
                "uri":  "",
                "hash":  ""
            }
        }
    ]
}

Самый простой способ добавить пользовательский источник коллекции в коллекцию виртуальных машин — добавить его в regedit.

  1. Открытие regedit.exe

  2. Перейдите к разделу Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Virtualization\

  3. GalleryLocations Найдите элемент.

    Если он уже существует, перейдите в меню "Изменить " и измените его.

    Если он еще не существует, перейдите в меню "Изменить", перейдите к разделу "Создать в многостроовое значение"

  4. Добавьте коллекцию в GalleryLocations раздел реестра.

    Раздел реестра коллекции с новым элементом

Устранение неполадок

Коллекция виртуальных машин предоставляет отчеты об ошибках в средстве просмотра событий Windows. Чтобы проверить наличие ошибок, выполните приведенные действия.

  1. Открытие средства просмотра событий
  2. Перейдите в журналы Windows ->Application
  3. Найдите события из исходной виртуальной машиныCreate.

Ресурсы

В ссылке GitHub есть несколько сценариев и вспомогательных сценариев коллекции.

См. пример записи коллекции здесь. Это JSON-файл, определяющий встроенную коллекцию.