Виртуальные машины и контейнеры
Создание проекта
Для мгновенного создания проекта необходимо перейти в раздел Облако и вкладку Виртуальные машины.
Если вы не создавали ранее у нас облачные проекты, то первым делом увидите в разделе общее описание доступных зон, процессоров и сервиса в целом. Сразу под описанием расположена кнопка Перейти к настройкам:

В настройках необходимо выбрать лишь имя проекта, после чего кликнуть на кнопку Создать проект. Проект будет автоматически создан для всех регионов, а в каком из них создавать каждую виртуальную машину – можете решить позже.

После создания проекта вы увидите таблицу со всеми вашими проектами, а также с выделенными и использованными ресурсами:

Вход в панель управления виртуальными машинами и контейнерами
Для входа в панель на вкладке Облако / Виртуальные машины выберете нужный проект и географическую зону из списка и нажмите кнопку Перейти.
После этого вы окажетесь в нашей панели управления облачной инфраструктурой, где можете в несколько кликов создавать виртуальные машины.
Интерфейс интуитивно понятен, но разберем все возможности по порядку.
Управление виртуальными машинами и ресурсами
Управление виртуальными машинами
После перехода в панель управления виртуальными машинами вам доступен интерфейс со всеми необходимыми функциями.
Географическая зона будет указана в левом верхнем углу панели.
На главной странице в панели отображается количество занятых и доступных в рамках проекта ресурсов в выбранной вами зоне.

Для каждого нового проекта по умолчанию устанавливаются квоты на выделенное количество ресурсов:
- в зоне – Москва: 32 vCPU, 32 Gb RAM, 1000 Gb disk SSD, 1000 Gb disk HDD, 10 IPv4
- в зоне – Алматы: 16 vCPU, 16 Gb RAM, 1000 Gb disk SSD, 10 IPv4
- в зоне – Прага: 16 vCPU, 16 Gb RAM, 1000 Gb disk SSD, 10 IPv4
Для расширения квот необходимо обратиться к вашему менеджеру и согласовать с ним новые квоты.
Создание виртуальной машины
-
Для создания виртуальной машины перейдите на вторую вкладку в меню слева Compute.

-
Выбрав пункт Images -> Public Images, можно ознакомиться с доступными образами для создания виртуальной машины.

Если нужного образа нет в панели, вы можете обратиться в поддержку, сотрудники поддержки добавят нужный образ, либо выдадут вам возможность добавлять новые образы в ваш проект самостоятельно, по умолчанию эта функция отключена.
Далее выбираем пункт Instances и нажимаем Create Instance.

-
Available Zone оставляем по умолчанию, в поле Specification выбираем конфигурацию виртуальной машины.

Название конфигурации включает в себя тип процессора, количество vCPU и vRAM.
Пример:
Из конфигурации
amd-1-1будет создана виртуальная машина на базе процессора AMD с 1 VCPU и 1 Gb vRAM. -
Выбираем образ операционной системы в разделе Operating System.

-
В разделе System Disk выбираем тип диска и устанавливаем его размер.

Размер диска вы можете выбрать произвольно, в зависимости от ваших задач.
Рекомендуем при выборе размера установочного диска учитывать, что он не должен быть меньше размера, который занимает образ операционной системы.Рядом с окном для указания размера диска, устанавливается флажок Deleted with the instance. Эта настройка проставляется по умолчанию и означает то, что при удалении данной виртуальной машины, диск будет удален вместе с ней.
Если вы хотите сохранить диск при удалении создаваемой вами машины, то необходимо снять флажок с этой настройки.
Увидеть свой диск после удаления виртуальной машины вы сможете в разделе Storage Volumes.
При необходимости можно добавить еще один диск, в пункте Data Disk нажав Add Data Disk. Вы так же всегда можете добавить новый диск к виртуальной машине позже.

Далее нажимаем Next: Network Config.
-
Появляется раздел Network Config, выбираем Shared Networks и выбираем сеть public, ip-адрес назначается автоматически.

При необходимости, можно добавить еще один адрес, нажав Add Virtual LAN.
-
Внизу выбираем Security Group.

Далее нажимаем Next: System Config.
-
В поле Name вводим название виртуальной машины

-
В разделе Login Type выбираем как будет осуществляться доступ к виртуальной машине, по SSH (Keypair) или по паролю (Password)
Использование ключей SSH позволяет защитить доступ SSH к виртуальным машинам. Вы можете сгенерировать пару ключей, с которыми будете подключаться к виртуальным машинам через SSH. Закрытый ключ будет храниться на клиенте, и вы сможете скопировать его на другие узлы. Открытый ключ необходимо будет загрузить и указать при создании виртуальной машины. Он будет внедрен в виртуальную машину с помощью Cloud-Init и использован для аутентификации OpenSSH. Внедрение ключей поддерживается для виртуальных машин Linux.
Мы рекомендуем для доступа к виртуальным машинам использовать SSH ключи.
-
Для доступа к виртуальной машине по SSH, нужно добавить публичный ключ в панель, для этого нажимаем Create Keypair.

Можно либо создать новую пару ключей, либо импортировать свой существующий ключ.
#ps1 net user Administrator «Password»

После добавления ключа нажимаем OK.

Создать или подгрузить SSH ключ в панель управления виртуальными машинами можно так же заранее, в разделе Compute -> Key Pairs, по такому же алгоритму.
-
Для доступа к виртуальной машине по паролю, выбираем Password и вводим пароль в которым будем подключаться в виртуальной машине.

-
Доступ по паролю к виртуальной машине с операционной системой Windows.
На этапе создания виртуальной машины, выбираем доступ по паролю и вводим любой пароль (на данном этапе введенный пароль не влияет на настройки доступа), далее разворачиваем внизу вкладку Expand Advanced Options.

В поле User Data введите скрипт:
Где «Password» после Administrator должен быть пароль, с которым будете заходить в систему.
Важный момент: в первой строчке после
#ps1есть пробел, он важен.Пример скрипта с паролем
1qaz@WSXпредставлен на скриншоте ниже:
Далее нажимаем Next: Confirm Config.
-
-
В новой вкладке проверяем конфигурацию виртуальной машины

Справа внизу нажимаем Confirm.
Ждем пока виртуальная машина создастся, в процессе создания виртуальной машины ей будет выделен IP-адрес и она станет доступна по сети.
После того, как виртуальная машина будет создана, вы сможете увидеть ее в панели на той же вкладке Compute -> Instances.

Как подключиться к виртуальной машине (Linux, Windows)
Подключиться к машине Linux можно через консоль (например MobaXterm) по ssh дефолтный пользователь@ip машины
Имена пользователей для разных систем:
Ubuntu — ubuntu
CentOS — cloud-user
Подключиться к машине Windows можно по RDC (Remote Desktop Connection), введя нужный адрес машины

Добавление нового диска к существующие виртуальной машине (начиная с создания диска, с настройкой тома внутри машины)
Создать диск можно во вкладке Compute -> Volumes и нажать Create Volume

При создании диска нужно указать его
1) Available Zone (всегда nova)
2) Создать ли пустой диск, создать загрузочный диск из образа, либо же из снапшота другого вольюма
3) Тип диска, SSD или HDD
4) Размер диска
5) Имя диска

Присоединить вольюм можно через машины More -> Related Resources -> Attach Volume


Либо через сам вольюм присоединить его к машине More -> Instance Related -> Attach и выбрать к какой ВМ его присоединить

После перезагрузки ВМ диск должен видеться в системе

Увеличение/уменьшение диска в существующей виртуальной машине (основной диск с OS и доп диск) (с настройкой тома внутри машины)
Увеличить вольюм можно зайдя в вольюм, More -> Capacity & Type

Далее выбрать до какого объёма его увеличить
Объём существующих дисков можно только увеличить


Floating IP и настройка роутинга
Для создания Floating IP нужно зайти во вкладку Network -> Floating IPs и нажать Allocate IP

При создании адреса можно выбрать нашу public сеть, указывать подсеть необязательно, некоторые могут быть заняты

Изменение флейвора для созданной виртуальной машины
Для изменения конфигурации необходимо у ВМ выбрать опцию More -> Configuration Update -> Resize

После этого выбрать новый флейвор и подтвердить force shutdown

После какого-то времени станет доступна опция Confirm Resize or Migrate, после её нажатия у машины изменится конфигурация (также изменение конфигурации можно отменить кнопкой Revert Resize or Migrate)

Добавление второго сетевого интерфейса
Для добавления сетевого интерфейса нужно выбрать опцию More -> Related Resources -> Attach Interface

После выбрать из какой сети будет выбран адрес, адрес может быть выделен как автоматически, так и вручную


Выключение виртуальной машины
Для выключения машины есть несколько опций в More Instance Status
1) Stop — машина выключится, но ресурсы машины продолжат тарифицироваться
2) Sheve — все резервы снимутся, тарифицируются только диск и ip

Удаление виртуальной машины
Для удаления машины нужно выбрать More -> Delete

В окне подтверждения есть опция Immediately delete, если её активировать, все IP, интерфейсы, диски и другие ресурсы ВМ будут также удалены

Работа с облаком через OpenStack CLI
Плюсы использования CLI
- Скорость и воспроизводимость. Скрипт = один запуск вместо множества кликов. Результат легко повторить на другом проекте.
- Автоматизация. Интеграция в CI/CD, cron, Ansible/Terraform-провижининг, пост‑деплой шаги.
- Полнота функций. CLI обычно первым получает новые ключи и параметры API, которые долго не появляются в UI.
- Точная диагностика. Больше полей в выводе, удобный парсинг (
-f json,-c колонки) для трейсинга проблем. - Масштаб. Пакетные операции над сотнями ВМ, портов, IP, томов без нагрузки на браузер и руки.
- Идемпотентность. Комбинации вида
openstack keypair show mykey || openstack keypair create ...позволяют безопасные повторные прогоны.
1. Установка OpenStack CLI
Linux (Ubuntu/Debian)
Откройте терминал.
Обычно через Ctrl+Alt+T или меню приложений (значок “Terminal”).
Обновите список пакетов:
sudo apt update
Установите pip (менеджер пакетов Python)
sudo apt install python3-pip -y
Обновите pip до последней версии:
pip3 install --upgrade pip
Установите OpenStack CLI
pip3 install python-openstackclient
Проверьте установку:
openstack --version

Должно показать номер версии, например: openstack 6.6.0
Windows
Установка Python 3
- Перейдите на сайт python.org.
- Нажмите Download Python 3.x.x.
- Запустите скачанный файл.
- Поставьте галочку “Add Python to PATH”.
- Нажмите Install Now и дождитесь завершения.
Открытие PowerShell
-
Нажмите Win+R.

-
Введите powershell и нажмите Enter. Откроется окно PowerShell.
Установка OpenStack CLI
В PowerShell введите:
pip install python-openstackclient
Проверка
openstack --version
Если установка прошла успешно, появится номер версии.
2. Получение файла конфигурации (RC-файл)
- Зайдите на сайт Openstack.
- Войдите под своей учётной записью.
- В правом верхнем углу наведите на иконку пользователя.
-
Выберите Get OpenRC file.

-
Сохраните файл, он появится у вас в папке “Загрузки” или “Downloads” с именем openrc.sh.
3. Авторизация в облаке
В терминале перейдите в папку, где лежит RC-файл:
cd ~/путь_до_openrc.sh
Выполните:
source openrc.sh
Введите пароль от панели облака(он такой же, какой у вас при заходе на сайт) при запросе.
Windows (PowerShell)
Откройте openrc.sh в блокноте, для этого можете в PowerShell прописать notepad openrc.sh или просто открыть его в через проводник выбрав “Открыть с помощью” -> Блокнот.
Найдите переменные OS_AUTH_URL, OS_USERNAME и т.д.).
В PowerShell задайте их вручную:
setx OS_AUTH_URL "https://cp.gpucloud.ru/api/openstack/moscowone/keystone/v3/"
setx OS_PROJECT_NAME "Введите тут название вашего проекта"
setx OS_USERNAME "Введите тут вашу логин"
setx OS_PASSWORD "введите_тут_ваш_пароль_от_Openstack"
setx OS_USER_DOMAIN_NAME "Введите домен с которым заходите на сайт"
setx OS_PROJECT_DOMAIN_NAME "Введите домен с которым заходите на сайт"
Закройте PowerShell и откройте снова, чтобы настройки применились.
4. Первые команды
Проверить доступ:
openstack token issue
Если неверно указан пароль, либо ошибка в параметрах вы увидите:

И вот что вы увидете если указали все верно:

Список виртуальных машин:
openstack server list
5. Создание виртуальной машины
Посмотреть шаблоны ресурсов, обычно в названии указывается:
“марка_процессора–количество_ядер–количество_ОЗУ_GB”
примеры: ice-2-2, amd-1-4, intel-4-16
openstack flavor list
Посмотреть образы(разные виды операционных систем):
openstack image list
Создать ВМ:
openstack server create --flavor amd-1-1 --image ubuntu-22.04 \ --nic net-id=<ID_сети> --security-group default \ --key-name mykey vm-test
6. Работа с сетью
Список сетей:
openstack network list
Создание сети:
openstack network create mynet
Создание подсети:
openstack subnet create --network mynet \ --subnet-range 192.168.100.0/24 mysubnet
Создание роутера:
openstack router create myrouter openstack router add subnet myrouter mysubnet
7. Работа с ключами SSH
Добавить ключ:
openstack keypair create --public-key ~/.ssh/id_rsa.pub mykey
Список ключей:
openstack keypair list
8. Работа с дисками и объектным хранилищем
Создание тома:
openstack volume create --size 10 myvolume
Прикрепить том к ВМ:
openstack server add volume vm-test myvolume
Создание контейнера:
openstack container create mycontainer
Загрузка объекта:
openstack object create mycontainer file.txt
Список объектов:
openstack object list mycontainer
Управление Openstack сетями и безопасностью
Введение в Security Groups
Security Group (группа безопасности) — это набор правил firewall, которые контролируют входящий и исходящий трафик ВМ. Каждое правило указывает:
- Протокол (TCP, UDP, ICMP, или всё)
- Порт или диапазон портов
- Источник/Назначение (IP адрес или пул IP-адресов)
- Направление (входящее/исходящее)
По умолчанию при создании ВМ ей присваивается default SG, которая разрешает весь входящий и исходящий трафик.
Создание Security Group
Через панель Skyline
-
Перейдите в Network -> Security Groups

-
Нажмите кнопку Create Security Group
- Заполните поля:
- Name: test-sg (произвольное имя)
- Description: SG для сервера (произвольное имя)
-
Нажмите Create Security Group

Добавление правил в Security Group
После создания SG нужно добавить правила (Rules).
Добавить правило для SSH (TCP 22)
-
Откройте только что созданную SG (кликните на её имя)

-
Вкладка Rules -> нажмите Create Rule
- Заполните:
- Protocol: Custom TCP Rule
- Direction: Ingress (входящий)
- Ether Type: IPv4
- Port Type: Custom
- Port/Port Range: 22
- Remote Type: CIDR
- Remote: 0.0.0.0/0 (разрешить всем) или конкретный IP (например, 203.0.113.50/28)
- Нажмите Add
В данном случае у нас появится правило, разрешающее Входящий TCP трафик на ВМ по IPv4, по 22 порту для айпи из пула 203.0.113.50-203.0.113.65
Важно: По умолчанию (Security Group “default”) все исходящие и входящие соединения (Egress/Ingress) разрешены. Если вам нужно ограничить исходящий или исходящий трафик, добавьте свои правила.
Добавление Security Group к ВМ
При создании ВМ
-
На этапе выбора Network выберите нужную SG из списка

К уже созданной ВМ
- Перейдите Compute -> Instances
- Найдите свою ВМ, кликните на её имя
- Вкладка Security Groups
-
Нажмите Manage Security Groups

-
Выберите нужные SG из списка.

-
Нажмите Ok.
Добавление Floating IP
Floating IP — это публичный IP адрес, который можно динамически привязывать к ВМ.
Выделение Floating IP
- Перейдите Network -> Floating IPs
-
Нажмите Allocate IP to Project

-
Выберите Pool: public (так же и других регионах)
Owned Subnet: можете выбрать IPv6, либо оставьте без изменений, тогда будет присвоен один из свободных IPv4-адресов
Batch Allocate: при активной опции вы сможете создать сразу необходимое количество Плавающих IP.
-
Нажмите Ok

Привязка Floating IP к ВМ:
-
Создание роутера
Network -> Routers -> Create Router

Name: Имя вашего роутера
Availability Zone Hints: nova (обязательно!)
Options: Open External Gateway (обязательно!)
External Gateway: public (только он)

-
Нажмите Ok
-
Необходимо создать сеть и подсеть Network -> Networks -> Create Network

-
Заполните поля:
Name: test_net (произвольное имя вашей сети)
Description: Ваше описание для этой сети (опционально)
Available Zone: nova (сеть активна)
Create Subnet: ✅ (необходимо создать подсеть)
Subnet Name: test_subnet (произвольное имя вашей подсети)
IP Version: ipv4 / ipv6
CIDR: 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16 (вы можете указать другие маски подсети, например /24, но пул обязательно должен быть из локальных адресов, которые приведены, то есть при указании внешнего IP, например 78.135.124.12, подсеть не будет работать)

-
Привязка подсети к роутеру Network -> Routers -> Ваш роутер -> More -> Connect Subnet

Выберите свою сеть и подсеть
Нажмите OK

-
Привязка локального IP к уже созданной vm(необходимо для привязки плавающего) Compute -> Instances
Найдите vm к которой хотите привязать плавающий IP
Нажмите More -> Related Resources – Attach Interface

Выберите недавно созданную сеть
Нажмите OK

На vm должен появиться ip из подсети, которую вы указывали, при создании сети.
-
Привязка плавающего IP к vm Compute -> Instances
Найдите vm к которой хотите привязать плавающий IP
Нажмите More -> Related Resources – Associate Floating IP

Из списка выберите локальный IP который привязан к vm (10.0.1.43). А далее вы сможете выбрать плавающий ip который вы создали ранее.
Важно!
- Вы не сможете привязать плавающий IP к внешнему IP-адресу(находится в сети public).
- После привязки плавающего IP необходимо перезагрузить vm, чтобы настройки применились
