Подготовка образа Windows
1. Необходимо клонировать репозиторий со скриптами автоматизированной сборки windows-imaging-tools и разархивировать его в корень диска (например, диск С).

2. Далее, клонировать репозиторий для обновления образа системы WindowsUpdateCLI и разархивировать его в корень диска (например, диск С).

3. Настройка инструментария:
- Скачать драйвера VirtIO (KVM). Последние версии драйверов будут доступны по ссылке – VirtIO Drivers ISO. Образ нужно сохранить в корне диска (например, корне диска С);
- Настроить Hyper-V согласно инструкции:
Включение Hyper-V для создания виртуальных машин в Windows 10/11
Hyper-V можно включить разными способами, в том числе используя панель управления Windows 10/11, PowerShell, или с помощью средства обслуживания образов развертывания и управления ими (DISM). В этой статье последовательно описан каждый из указанных способов.
Механизм Hyper-V встроен в Windows в качестве дополнительной опции. Скачать Hyper-V нельзя.
Проверить следующие требования:
- Windows 10/11 “Корпоративная”, “Pro” или “Для образовательных учреждений”;
- 64-разрядный процессор с поддержкой преобразования адресов второго уровня (SLAT);
- ЦП должен поддерживать расширения режима мониторинга виртуальной машины (VT-c на процессорах Intel);
- Не менее 4 ГБ оперативной памяти.
Роль “Hyper-V” невозможно установить в Windows 10/11 редакции – “Домашняя”.
Активация “Hyper-V” с помощью PowerShell;
- Открыть консоль PowerShell от имени администратора;
- Выполнить команду:
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
Активация “Hyper-V” при помощи CMD и DISM
Система обслуживания образов развертывания и управления ими (DISM) позволяет настраивать ОС Windows и образы с ОС Windows.
Для активации роли “Hyper-V” при помощи инструмента DISM необходимо:
1. Запустить PowerShell или сеанс CMD от имени администратора;
2. Ввести следующую команду:
DISM /Online /Enable-Feature /All /FeatureName:Microsoft-Hyper-V

Дополнительные сведения о DISM см. в разделе Техническое руководство по DISM.
Включение роли Hyper-V через раздел “Параметры”
1. Нажать правой кнопкой мыши на кнопке “Пуск” и выбрать пункт “Приложения и компоненты” или “Установленные приложения”;
2. Выбрать Программы и компоненты справа в разделе связанные параметры;
3. Выбрать пункт Включение или отключение компонентов Windows;
4. Выбрать Hyper-V и нажать кнопку ОК.

После завершения установки перезапустить компьютер.
Настроить внешний коммутатор в Hyper-V
Создать виртуальный коммутатор типа “external” с доступом в Интернет.
Для этого нужно:
1. Открыть панель “Hyper-V” и перейти в диспетчер настройки виртуального коммутатора;

2. Перейти к созданию нового коммутатора (тип – Внутренний) и нажать на – “Создать виртуальный коммутатор”;

3. Заполнить поле “Имя – external”, проверить тип подключения и нажать кнопку – “Применить”, затем – “ОК”;

-
Скачать и установить Windows ADK. Все поля при установке можно оставить по умолчанию;
-
Скачать ISO-образ операционной системы.
Рекомендуется использовать en-US версию образа
Сборка образа ОС Windows
Установочный образ может содержать в себе несколько редакций операционной системы. Так как установка проходит в автоматическом режиме, необходимо заранее выбрать нужную редакцию и экспортировать ее в отдельный wim-файл.
-
Подключить скачанный ISO-образ ОС нажав на него правой кнопкой мыши, выбрав пункт меню – “Подключить”. Образ примонтируется и ему будет присвоена метка (D; E; F etc);
-
Запустить PowerShell от имени администратора и вывести список всех версий Windows с помощью команды:
Get-WindowsImage -ImagePath D:\sources\Install.wim
D:\sources\Install.wim — полный путь к WIM-файлу системы на смонтированном диске.
Появится список редакций с указанием ImageIndex ее номера:
ImageIndex : 6
ImageName : Windows 10 Pro
ImageDescription : Windows 10 Pro
ImageSize : 16 147 666 407 bytes
Пример вывода команды:

-
Создать папку “Temp” в корне диска C:
-
Экспортировать редакцию с требуемым ImageIndex (в примере указан Index 6, что соответствует редакции Win 10 Pro) с помощью команды:
dism `
/export-image `
/SourceImageFile:D:\sources\Install.wim ` - путь к файлу с редакцией на примонтированном диске с образом
/SourceIndex:6 ` - индекс полученный на шаге 2
/DestinationImageFile:C:\Temp\install.wim ` - путь куда будет импортирована редакция
/Compress:max `
/CheckIntegrity
SourceImageFile – путь к файлу с редакцией на примонтированном диске с образом;
SourceIndex – индекс полученный на шаге 2;
DestinationImageFile – путь куда будет импортирована редакция;
- Перейти в каталог windows-imaging-tools и импортировать модули:
-
Перенести содержимое каталога WindowsUpdateCLI в windows-imaging-tools-master\UnattendResources\WindowsUpdates.
-
Создать конфигурационный файл config.ini:
$ConfigFilePath = ".\config.ini"
New-WindowsImageConfig -ConfigFilePath $ConfigFilePath
- Открыть созданный файл и проверить параметры:
- wim_file_path=C:\Temp\install.wim – путь к извлеченному образу редакции ОС
- image_name=Windows 10 Pro – имя должно совпадать с полем ImageName из пункта 2
- image_path=С:\Win_10_Pro_en.qcow2 – путь по которому будет создан файл с образом
- virtual_disk_format=QCOW2 – формат виртуального диска для Openstack
- image_type=KVM
- external_switch=external – указать имя, которое было присвоено порту на шаге настройки коммутатора Hyper-V
- virtio_iso_path=C:\virtio.iso – путь до образа с драйверами VirtIO
- install_qemu_ga=True – установка эмулятора устройств в виртуальных средах
- install_updates=True – установка обновлений при установке
- purge_updates=False – удаление обновлений после установки
- compress_qcow2=True – сжатие образа для экономии размера
Остальные поля файла config.ini можно оставить по умолчанию
- Запустить локальную сборку образа с помощью команды:
New-WindowsOnlineImage -ConfigFilePath $ConfigFilePath
В процессе создания образа на этапе запуска ВМ, возможно получить сообщение вида:

Это нормальное поведение. Системе требуется время, чтобы выполнить развертывание и установку.
Проверить, что процесс выполняется можно подключившись к консоли созданной ВМ в Диспетчере Hyper-V.
- Дождаться завершения выполнения операции и убедиться, что файл С:\Win_10_Pro_en.qcow2 создан.
Подготовка образа Linux
Рекомендуется использовать готовые официальные cloud-ready образы. Техническая поддержка по настройке индивидуального образа не оказывается.
Для настройки шаблона виртуальной машины необходимо использовать любое ПО виртуализации.
1. После установки операционной системы, необходимо установить cloud-init, выполнив команду (на примере операционной системы Ubuntu. В других операционных системах команды могут отличаться):
sudo apt install cloud-init
2. При создании образов Ubuntu, cloud-init должен быть явно настроен для используемого источника метаданных. Сервер метаданных OpenStack эмулирует службу метаданных EC2, используемую образами в Amazon EC2.
Чтобы установить источник метаданных, который будет использоваться образом, необходимо выполнить команду:
dpkg-reconfigure cloud-init
При появлении запроса выбрать источник данных – EC2.
3. Также имеется возможность изменить имя учетной записи, используемой cloud-init путем редактирования /etc/cloud/cloud.cfg файла и добавления строки с другим пользователем. Например, чтобы настроить cloud-init передачу ключа в учетную запись с именем admin, необходимо использовать следующий синтаксис в файле конфигурации:
users:
- name: admin
(...)
По завершении выполнения подготовительных шагов, необходимо загрузить шаблон виртуальной машины на платформу и создать из образа Инстанс.
Подробная информация по конфигурированию cloud-init доступна в официальной документации.