Вы можете подключить ISO-образ к виртуальной машине (ВМ). Например, для установки собственной операционной системы (ОС). ISO-образ можно загрузить из репозитория, публичного URL или локального компьютера.
При установке ОС из ISO-образа на ВМ:
- запуск скриптов будет доступен только после того, как QEMU Guest Agent определит тип ОС;
- изменение пароля будет доступно только после того, как QEMU Guest Agent определит тип ОС, или после выключения ВМ.
Чтобы резервная копия для такой ВМ создавалась корректно, перейдите в Виртуальные машины → выберите ВМ → Меню → Параметры VM → Тонкие настройки → Ресурсы и ограничения → параметр Раздел для увеличения и укажите раздел, на котором находится корневая файловая система.
Управление ISO-образами
Чтобы подключить ISO-образ:
- Перейдите в Виртуальные машины → выберите ВМ → меню → Подключить ISO-образ.
- Выберите метод загрузки образа:
- Из репозитория — выберите ISO-образ из подключённого репозитория;
- Локальный файл — выберите файл образа в формате iso на локальном компьютере;
- URL образа — введите URL, по которому доступен образ. Образ может быть доступен по протоколу HTTP(S) или FTP.
- Для загрузки из локального файла или URL:
- Выберите Тип ОС:
- Linux;
- Windows;
- FreeBSD;
- другая ОС.
- Укажите Теги образа, если на этой ВМ требуется запуск скриптов. Скрипт будет запускаться на ВМ, если хотя бы один из его тегов совпадает с тегом ОС.
- Выберите Тип ОС:
- Чтобы не загружать ВМ из образа после подключения, отключите опцию Загрузить виртуальную машину с ISO.
- Если к кластеру подключено хранилище NAS, вы можете сохранить файл образа в репозитории. Для этого:
- Включите опцию Сохранить ISO-образ в репозиторий.
- Выберите Репозиторий.
- Укажите произвольное Примечание.
-
Нажмите кнопку Загрузить образ. Если это первый ISO-образ, подключаемый к данной ВМ, она будет перезагружена. После загрузки образа вы можете подключиться к ВМ по VNC или SPICE.
Чтобы посмотреть процесс загрузки образа, нажмите на статус ВМ. Индикатор загрузки откроется в выдвижной панели. В этой панели вы можете Отменить загрузку.Если ISO-образ загружается с локального компьютера, при обновлении или закрытии страницы в браузере загрузка прервётся.
Чтобы отключить ISO-образ:
- Перейдите в Виртуальные машины → выберите ВМ → меню → Отключить ISO-образ.
- Включите опцию ОС переустановлена, если вы установили ОС из этого ISO-образа.
- Нажмите кнопку Отключить. VMmanager отключит ISO-образ и удалит его. Если ОС из образа была установлена корректно, VMmanager перезагрузит ВМ с новой операционной системой.
Менеджер загрузок
Вы можете отслеживать и управлять процессом загрузки ISO-образов через менеджер загрузок. Для этого нажмите в правом меню значок .
Возможные действия:
- Отменить — отменить загрузку образа;
- Удалить — удалить запись о загрузке из списка;
- Очистить завершённые — удалить все записи о завершённых загрузках из списка.
Логика работы
Ограничения доступа
Загрузка ISO-образа с локального компьютера может завершиться с ошибкой, если в платформе используются ограничения доступа по IP-адресам пользователей. Чтобы пользователи могли загружать ISO-образы с локального компьютера, разрешите в настройках групп пользователей доступ к платформе с IP-адреса 127.0.0.1. Подробнее см. в статье Ограничение доступа пользователей к платформе.
Хранение ISO-образов
Если для ISO-образов:
- не используется NAS-хранилище — файлы ISO-образов загружаются в директорию для хранения образов и резервных копий в хранилище кластера. По умолчанию это директория /image. После отключения ISO-образа его файл будет удалён;
- используется NAS-хранилище — файлы ISO-образов загружаются в директорию /iso_images хранилища кластера. После отключения ISO-образа его файл остаётся в хранилище.
В процессе загрузки у файла будет расширение .iso.part. При успешном окончании загрузки расширение меняется на .iso. При возникновении критической ошибки во время загрузки частично загруженный файл образа будет удалён.
Подключение и отключение ISO-образов
Для подключения ISO-образа VMmanager использует технологию iPXE. Эта технология позволяет не загружать образ полностью, а скачивать только нужные файлы в процессе установки. При первом подключении ISO-образа к ВМ в конфигурационный файл ВМ добавляется виртуальный CD-привод. ВМ будет перезагружена для обновления конфигурации. При следующих подключениях и отключениях ISO-образов ВМ не будет перезагружена. Подключение и отключение образов будет эмулировать вставку и извлечение носителя из виртуального CD-привода.
Если при подключении образа включить опцию Загрузить виртуальную машину с ISO, то ВМ будет перезагружена с виртуального CD-привода. Если опция отключена, то ISO-образ подключится в качестве дополнительного диска ВМ.
Если к ВМ подключён ISO-образ, все операции с дисками (миграция, создание резервных копий) будут заблокированы.
При отключении ISO-образа виртуальный CD-привод останется в конфигурации ВМ, но не будет использоваться в качестве источника загрузки.
Монтирование ISO-образа
Если в конфигурации ОС на ВМ настроено автомонтирование дисков, подключённый ISO-образ будет примонтирован автоматически.
Чтобы примонтировать ISO-образ вручную:
- Подключитесь к ВМ по SSH. Подробнее о подключении по SSH см. в статье Настройка рабочего места.
-
Определите путь к устройству виртуального CD-привода:
lshw | grep cdrom
-
Выполните команду:
mount <path_to_cdrom> /mnt
Пояснения к команде
Теги ISO-образов
При подключении ISO-образа необходимо указать его теги и выбрать тип ОС. На основе этой информации формируется список тегов образа. Тип ОС сохраняется первым элементом списка. Возможные значения тега для типа ОС:
- linux — для ОС семейства Linux;
- windows — для ОС Windows;
- freebsd — для ОС FreeBSD;
- other_os — для других ОС.
Например, администратор выбрал тип ОС Linux и указал теги ubuntu, ubuntu22, my_os. Cформируется список вида "linux, ubuntu, ubuntu 22, my_os".
Платформа проводит валидацию списка тегов и удаляет из него конфликтные значения. Например, администратор выбрал тип ОС Windows и указал теги linux, windows11, debian. Cформируется список вида "windows, linux, windows11, debian". Тег linux относится к ОС и не соответствует выбранному типу, поэтому он будет удалён. Список будет иметь вид "windows, windows11, debian".
Если ISO-образ содержит ОС семейства Linux, в тегах необходимо указать одно из следующих значений:
- для ОС на основе Debian — debian, ubuntu, astra;
- для ОС на основе Red Hat — redhat, centos, fedora, alma, rocky, oracle.
На основе списка тегов для ВМ будет выбрана модель добавления IPv4-адреса и тип ОС. Подробнее о модели добавления адресов см. в статье Управление IP-адресами ВМ.
Если тип ОС и теги указаны корректно, платформа сможет выполнять часть операций с ВМ без установки ПО QEMU Guest Agent. Операции, для которых необходимо наличие QEMU Guest Agent:
- создание обезличенных образов с ОС Windows;
- запуск скриптов на ВМ с ОС Windows;
- изменение пароля ВМ;
- добавление IPv4-адреса.
Возможные проблемы с выделением IP-адресов
Если ВМ была создана без ОС, а затем при установке ОС из ISO-образа был пропущен шаг настройки сети, то платформа не сможет взаимодействовать с такой ВМ. Чтобы решить проблему, синхронизируйте настройки сети на ВМ и в платформе:
- Задайте настройки сети на ВМ либо удалите IP-адрес ВМ в интерфейсе платформы.
- Подождите 15 минут. Платформа опросит ВМ и получит актуальную информацию о её настройках.
Настройка максимального размера ISO-образа
Администратор платформы может подключать к ВМ ISO-образы любого размера. По умолчанию пользователи и продвинутые пользователи могут подключать ISO-образы с размером не более 8 Гб. Чтобы изменить это значение, в правом меню нажмите значок → вкладка Обзор системы → значок рядом с параметром Макс.размер загружаемых ISO → введите требуемый размер в Гб.
Вы также можете изменить максимальный размер ISO-образов через API:
- Если на сервере не установлена утилита curl, установите её:
dnf install curl || apt install curl
- Получите токен авторизации:
curl -k -X POST -H "accept: application/json" -H "Content-Type: application/json" 'https://domain.com/api/auth/v4/public/token' -d '{"email": "admin_email", "password": "admin_pass"}'
Пояснения к командеВ ответ придёт сообщение вида:
Пример ответа в JSON{ "confirmed": true, "expires_at": null, "id": "6", "token": "4-e9726dd9-61d9-2940-add3-914851d2cb8a" }
Сохраните полученное значение параметра token — токен авторизации.
-
Выполните API-запрос:
curl -k -H "x-xsrf-token: <token>" -X POST "https://domain.com/vm/v3/settings/max_user_iso_size" -d '{"value":"<max_size>"}'
Пояснения к команде
Связанные статьи: