# Официальная инструкция по развёртыванию ВМ (Nubes) _Источник: официальный сайт Nubes — сохранено для использования в разработке — 2026-01-29_ ## Описание Данный сервис позволяет разворачивать виртуальные машины (ВМ) непосредственно из Личного кабинета (ЛК). --- ## Доступные операции - `create` — Создание виртуальной машины - `delete` — Удаление виртуальной машины - `resume` — Запуск виртуальной машины - `suspend` — Остановка виртуальной машины --- ## Параметры для развёртывания ВМ ### Обязательные параметры - `vappUid` — UUID vApp, в которой будет создаваться виртуальная машина. Пример: `WZ00400` - `vmName` — Уникальное имя виртуальной машины. Пример: `test-vm` - `vmCpu` — Количество ядер процессора. Должно быть больше 0. Пример: `1` - `vmRam` — Объем оперативной памяти в гигабайтах. Должно быть больше 0. Пример: `1` - `accessPortList` — Белый список портов для доступа к виртуальной машине извне в формате JSON. Пример: `["22","10050"]` - `imageVm` — Образ операционной системы для развёртывания. Доступные значения: `RockyLinux_9-16G-cloudinit`, `Ubuntu_22-20G`, `Debian_13-20G` - `userLogin` — Логин пользователя для SSH-доступа. По умолчанию: `myuser` - `userPublicKey` — Публичный SSH-ключ пользователя в формате OpenSSH. Пример: `ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC...` - `needAddZabbixTemplate` — Значение истина/ложь, определяющее будет ли добавлен хост в Zabbix. Пример: `true` ### Опциональные параметры - `accessIpList` — Белый список IP-адресов для доступа к виртуальной машине в формате JSON. Если оставить пустым, ВМ будет доступна со всех адресов. Пример: `["192.168.1.1", "10.0.0.5"]` - `vmDisk` — Размер дополнительного диска в гигабайтах. Должно быть больше 0. Пример: `50` - `ipSpaceName` — Внешний IP-адрес. Если не требуется — укажите значение `"no-needed"` (в нём не будет работать сбор метрик Zabbix). - `cloudInit` — YAML-скрипт для кастомизации системы через cloud-init. --- ## Доступные образы операционных систем - `RockyLinux_9-16G-cloudinit` — Базовый образ Rocky Linux 9 (системный диск 16 ГБ). Поддержка cloud-init. Минимальные требования: 1 vCPU, 1 ГБ RAM. - `Ubuntu_22-20G` — Образ Ubuntu Server 22.04 LTS (системный диск 20 ГБ). Поддержка cloud-init. Минимальные требования: 1 vCPU, 1 ГБ RAM. - `Debian_13-20G` — Образ Debian 13 (Trixie) (системный диск 20 ГБ). Поддержка cloud-init. Минимальные требования: 1 vCPU, 1 ГБ RAM. --- ## Пример использования Cloud-init ```yaml users: - name: myuser sudo: ALL=(ALL) NOPASSWD:ALL groups: sudo shell: /bin/bash ssh-authorized-keys: - ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC... packages: - nginx runcmd: - systemctl enable --now nginx - systemctl restart nginx ``` --- ## Результат выполнения После успешного развёртывания в Личном кабинете появится новая виртуальная машина с заданными характеристиками. SSH-доступ осуществляется с использованием указанных логина и публичного ключа. --- ## Важные примечания и ограничения - Для отключения внешнего IP укажите значение `"no-needed"` в параметре `ipSpaceName`. - Параметр `cloudInit` является опциональным. - Не рекомендуется использовать продолжительные инструкции в `cloudInit` (таймаут ~5 минут). - Не поддерживается запись файлов через `cloudInit` (ограничение платформы). - Не реализовано создание резервных копий ВМ через данный сервис. --- ## Диагностика проблем с Cloud-init - Основной лог-файл: `/var/log/cloud-init.log`. - Пакет не устанавливается: - Проверьте доступность пакета в репозитории. - Убедитесь в правильности написания имени пакета. - Попробуйте установить вручную: `apt install <имя_пакета>` (Debian/Ubuntu) или `dnf install <имя_пакета>` (Rocky Linux). - Команда не выполняется: - Проверьте наличие требуемой утилиты в системе. - Убедитесь в правильности синтаксиса команды. - Попробуйте выполнить команду вручную для диагностики. --- _Если нужно, могу также автоматически добавить ссылку на этот документ в `docs/registry/resources/vm.md` и/или в индекс документов — подтвердите, если хотите вставить ссылку (это предполагает изменение существующего файла)._