Операции с виртуальными машинами
Примечание
Действия выполняются пользователем с ролью Администратор ВЦОД или Разработчик ВМ
Пользовательский ресурс — физическая и логическая совокупность ресурсов, выделяемая на виртуальном кластере и содержащая виртуальную машину. Один пользовательский ресурс содержит одну ВМ.
Создать ВМ
Создание ВМ возможно двумя способами: с помощью YAML-файлов или через командную строку. Первый вариант предпочтительнее, так как он минимизирует вероятность ошибок.
Создать ВМ с помощью YAML-файла
- Создайте файл формата YAML.
-
Опишите в файле все необходимые параметры и правила для создания ВМ.
Подробная информация описана в статье Правила размещения виртуальных машин. -
При необходимости укажите IP-адрес из пула доступных адресов:
-
Чтобы просмотреть доступные адреса, введите команду
где
uuid— идентификатор сети или подсети;full_output— отобразить весь список адресов. Без указанияfull_outputпо умолчанию отобразятся только три доступных адреса.
-
Чтобы просмотреть занятые адреса, введите
гдеuuid— идентификатор сети или подсети. -
Добавьте в YAML
-
-
При необходимости ограничьте трафик для сетевых интерфейсов
Пример для ВМ с одним сетевым интерфейсомnetworks: ["идентификатор сети"] inbounds: ["лимит входящего трафика"] outbounds: ["лимит исходящего трафика"]Пример для ВМ с двумя сетевыми интерфейсамиnetworks: ["идентификатор сети 1", "идентификатор сети 2"] inbounds: ["-", "лимит входящего трафика сети 2"] outbounds: ["лимит исходящего трафика сети 1", "-"]Для ВМ с двумя сетевыми интерфейсами ограничения указываются в том же порядке, что и интерфейсы в
networks, значение"-"означает отсутствие ограничения на сетевой интерфейс. -
При необходимости определите индивидуальные параметры переподписки ЦПУ и ОЗУ.
- Сохраните файл.
-
Загрузите файл на Платформу.
Чтобы загрузить файлы в Sharx Base, введите команду
гдеspec— расположение YAML-файла.При локальном расположении на АРМ пользователя введите путь до файла.
При расположении в стороннем репозитории укажите ссылку на данный файл.
-
После загрузки проверьте список всех созданных ВМ
гдеvcluster— имя виртуального кластера.
Пример
Примеры файлов создания ВМ:
- для хранилища Libvirt с
nodeSelector, указанием IP-адреса и ограничением на единственный сетевой интерфейс scheduler_request_libvirt.yaml. - для хранилища РСХД с
nodeSelector, указанием IP-адресов и ограничением только на второй сетевой интерфейс scheduler_request_sp.yaml.
Создать ВМ через командную строку
Чтобы создать ВМ через командную строку, введите
scheduler request add --vcluster <VCLUSTER>
--name <NAME>
[--kind <KIND>]
[--descr <DESCR>]
[--labels <LABELS>]
[--data <DATA>]
[--type <common|linked_clone>]
[--template <TEMPLATE>]
где
vcluster— имя виртуального кластера;name— имя пользовательского ресурса, содержащего ВМ;kind— тип запроса. По умолчаниюvm;descr— описание виртуальной машины;labels— метки ВМ. Задаются в форматеkey=value, разделяются пробелами;data— определение спецификаций. Возможные значения можно посмотреть в примерах YAML-файлов: создание ВМ с Libvirt-хранилищем, создание ВМ с РСХД-хранилищем;-
type— тип ВМ. Значение по умолчанию:common. Возможные значения:common— ВМ создается стандартным способом, дисковая система формируется как полная копия хранилища источника;linked_clone— ВМ создается по технологии связанных клонов, использует общий родительский виртуальный диск в режиме «только чтение» и хранит только свои собственные изменения;
-
template— идентификатор шаблона ВМ.
Внимание
Опция type=linked_clone может быть использована только для создания ВМ с Libvirt-хранилищем.
Прежде чем использовать опцию template при создании ВМ, необходимо прочитать статью Шаблоны виртуальных машин
Просмотреть ВМ
-
Просмотреть список всех созданных ВМ
гдеvcluster— имя виртуального кластера. -
Просмотреть информацию о конкретной ВМ
scheduler request show --vcluster <VCLUSTER> --name <NAME> [--kind <KIND>] [--show_uuid <SHOW_UUID>] [--metrics <METRICS>]где
vcluster— имя виртуального кластера;name— имя пользовательского ресурса, содержащего ВМ;kind— тип запроса. По умолчаниюvm;show_uuid— показать идентификатор объекта;metrics— получить метрики ВМ. Возможные значения:yes— включить получение метрик,no— отключить получение метрик.
-
Просмотреть статус ВМ
где
vcluster— имя виртуального кластера;kind— тип запроса. По умолчаниюvm;name— имя пользовательского ресурса, содержащего ВМ.
-
Просмотреть логины и роли пользователей, имеющих доступ к ВМ
где
vcluster— имя виртуального кластера;name— имя пользовательского ресурса, содержащего ВМ;kind— тип запроса. По умолчаниюvm.
Обновить ВМ
scheduler request update --vcluster <VCLUSTER>
--name <NAME>
--data <DATA>
[--kind <KIND>]
[--descr <DESCR>]
[--labels <LABELS>]
где
vcluster— имя виртуального кластера;name— имя пользовательского ресурса, содержащего ВМ;data— определение спецификаций. Возможные значения можно посмотреть в примерах YAML-файлов: создание ВМ с Libvirt-хранилищем, создание ВМ с РСХД-хранилищем;kind— тип запроса. По умолчаниюvm;descr— описание виртуальной машины;labels— метки ВМ. Задаются в форматеkey=value, разделяются пробелами.
Изменить статус ВМ
scheduler request state --vcluster <VCLUSTER>
--name <NAME>
--state <START|STOP|REBOOT|SUSPEND|RESUME>
[--kind <KIND>]
[--vms <VMS>]
[--force <yes|no>]
где
vcluster— имя виртуального кластера;name— имя пользовательского ресурса, содержащего ВМ, у которой изменяется статус;-
state— статус ВМ. Возможные значения:START— запуск ВМ;STOP— остановка ВМ;REBOOT— перезагрузка ВМ;SUSPEND— приостановка работы ВМ;RESUME— возобновление работы ВМ;
-
kind— тип запроса. Значение по умолчанию —vm; vms— список имен ВМ. Значение по умолчанию —*;-
force— опция, разрешающая принудительную небезопасную перезагрузку или остановку виртуальной машины. Значение по умолчанию —no. Возможные значения:yes— принудительная перезагрузка или остановка ВМ разрешена. При этом несохраненные данные могут быть потеряны;no— выполняется только штатная перезагрузка или остановка.
Внимание
Опция force действует исключительно для состояний STOP и REBOOT
Назначить метку СКЗИ виртуальной машине
Метка СКЗИ или криптографическая метка применяется к ВМ, чтобы обозначить ее принадлежность к контуру криптографической защиты. Метка имеет ключ-значение vm=crypto. Для ВМ с меткой блокируются функции миграции, создания снимков и шаблона на основе этой ВМ. Данные меры исключают риск утечки защищаемых данных.
Внимание
Криптографическую метку может назначить или снять только определенная роль — Администратор СКЗИ ВЦОД. Эта роль находится в конфигурации ВЦОД cb_virt и будет опиисана в следующих версиях документации
-
Чтобы назначить метку СКЗИ виртуальной машине, введите команду
где
vcluster— имя виртуального кластера;name— имя пользовательского ресурса, содержащего ВМ.
-
Чтобы удалить метку СКЗИ с виртуальной машины, введите команду
где
vcluster— имя виртуального кластера;name— имя пользовательского ресурса, содержащего ВМ.
Мигрировать ВМ
Важно
Чтобы мигрировать ВМ, у которых есть снимок:
- Выключите ВМ
state=stop. - Выполните миграцию с параметром
mode=offline
scheduler request migrate --vcluster <VCLUSTER>
--name <NAME>
--node <NODE>
--mode <MODE>
[--kind <KIND>]
где
vcluster— имя виртуального кластера;name— имя пользовательского ресурса, внутри которого находится мигрируемая ВМ;node— идентификатор целевого узла;-
mode— режим миграции. Возможные значения:live— миграция без прекращения работы ВМ;offline— миграция с отключением ВМ;
-
kind— тип запроса. Значение по умолчанию —vm.
Внимание
Миграция ВМ с меткой СКЗИ невозможна
Удалить ВМ
Чтобы удалить ВМ, введите
где
vcluster— имя виртуального кластера;name— имя пользовательского ресурса, содержащего ВМ;kind— тип запроса. По умолчаниюvm;backup— создать снимок удаляемой ВМ. Снимок удалится через 1 день. Возможные значенияbackup—yes,no.
Термины и определения содержатся в статьях: