Поделиться через


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

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

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

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

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

Эта статья подробно описывает:

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

Коллекция виртуальных машин — это графическое представление для набора источников виртуальных машин, определенных в реестре 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 ->Приложения
  3. Ищите события от источника VMCreate.

Ресурсы

На GitHub link есть несколько сценариев и вспомогательных скриптов для галерей.

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