Заказ сервера OpenStack (через API)

Чтобы заказать сервер на базе OpenStack:

  1. Создайте сервисный аккаунт.
  2. Создайте API-ключ.
  3. Для выполнения API-запросов получите сессионный токен.
  4. Для заказа сервера (instance) выполните POST-запрос согласно примеру:

где:

  • <ID_ПРОЕКТА> идентификатор проекта.

    1. Щёлкните на текущий контекст. Подробнее см. раздел Выбор организации, папки или проекта.
    2. Выберите организацию.
    3. В списке найдите нужный проект. Идентификатор проекта указан в столбце Идентификатор.
  • <ТОКЕН> сессионный токен, полученный в шаге 3.

Параметры

ПараметрПример значенияОписаниеОбязательный?
project_nameproj-7jokmecsqrИдентификатор проектаДа
product_ide6fa78c9-2ee1-4f9e-b86c-5d7246f38526Идентификатор продуктаДа
nameserver1Имя сервера. Требования к имени сервера см. в разделе Заказ сервераДа
descriptionСервер для тестирования приложений

Описание сервера

Нет
Образ сервера (image)

image.id

cf85e269-d367-4296-b07a-a1031f128a01

Идентификатор образа сервера.

Список идентификаторов образов можно посмотреть:


Если вы хотите использовать образ, который самостоятельно загрузили или создали из диска, то ИД такого образа можно получить с помощью запроса в Swagger

Да

image.name

AltLinux10SP

Имя образа сервера.

Список имён образов можно посмотреть:


Если вы хотите использовать образ, который самостоятельно загрузили или создали из диска, то имя такого образа можно получить с помощью запроса в Swagger

Да

Конфигурация сервера (flavor)

flavor.id

cf3e4230-0957-491d-822d-7f83e43984fb

Идентификатор конфигурации сервера.

Список идентификаторов конфигураций можно посмотреть:


Да
flavor.ram12288

Объём оперативной памяти в МБ.

Объём оперативной памяти у конфигураций можно посмотреть:


Да
flavor.gpus0

Количество GPU-процессоров. Для 1 сервера можно заказать 1, 2, 4 или 8 GPU-процессоров

Нет
flavor.nameb5.large.6

Имя конфигурации сервера.

Список имён конфигураций можно посмотреть:


Да
flavor.vcpus2

Количество процессоров (vCPU).

Количество процессоров у конфигураций можно посмотреть:


Да

Зона доступности (region)

region.id

02d93c85-e2b8-4708-bb16-1cff29f30af1

Идентификатор зоны доступности:


  • 0c530dd3-eaae-4216-8f9d-9b5710a7cc30 — зона доступности ru-central1
  • 02d93c85-e2b8-4708-bb16-1cff29f30af1 — зона доступности ru-central2
  • 3a2a3d17-88a2-4482-82d9-8c3a5f41be59 — зона доступности ru-central3
Да
region.nameru-central2

Название зоны доступности:


  • ru-central1
  • ru-central2
  • ru-central3
Нет
region.descriptionМоскваОписание зоны доступностиНет

Системный диск (boot_volume)

volumes_config.boot_volume.size

4

Размер системного диска в ГБ

Да

volumes_config.boot_volume.volume_type.id

9d1596c7-6c47-4e8f-ae33-987464aabeaf

Идентификатор типа диска.

Список идентификаторов типов дисков можно посмотреть:


Да

volumes_config.boot_volume.volume_type.name

high

Название типа диска.

Список названий типов дисков можно посмотреть:


Да

volumes_config.boot_volume.volume_type.extra_specs.disk_type

High

Тип диска.

Список типов дисков можно посмотреть:


Да

volumes_config.boot_volume.volume_type.extra_specs.max_read_iops

15000

Количество IOPS на чтение у типа диска.

Количество IOPS можно посмотреть:


Нет

volumes_config.boot_volume.volume_type.extra_specs.max_write_iops

5000

Количество IOPS на запись у типа диска.

Количество IOPS можно посмотреть:


Нет
Дополнительный диск (extra_volumes)

volumes_config.extra_volumes.name

dopdisk

Название дополнительного диска

Нет

volumes_config.extra_volumes.size

5

Размер дополнительного диска в ГБ

Нет

volumes_config.extra_volumes.volume_type.id

2207b7c5-5848-477b-9745-8cb422af1705

Идентификатор типа диска.

Список идентификаторов типов дисков можно посмотреть:


Нет

volumes_config.extra_volumes.volume_type.name

average

Название типа диска.

Список названий типов дисков можно посмотреть:


Нет

volumes_config.extra_volumes.volume_type.extra_specs.disk_type

 

Average

Тип диска.

Список типов дисков можно посмотреть:


Нет

volumes_config.extra_volumes.volume_type.extra_specs.max_read_iops

 

10000

Количество IOPS на чтение у типа диска.

Количество IOPS можно посмотреть:


Нет

volumes_config.extra_volumes.volume_type.extra_specs.max_write_iops

3000

Количество IOPS на запись у типа диска.

Количество IOPS можно посмотреть:


Нет

Группы безопасности (security_groups)

security_groups.id

cef79960-4845-41b3-a4de-1b46c0849796

Идентификатор группы безопасности. Можно указать несколько групп.

Список идентификаторов групп безопасности можно посмотреть с помощью запроса в Swagger

Да

security_groups.name

default

Название группы безопасности. Можно указать несколько групп.

Список названий групп безопасности можно посмотреть с помощью запроса в Swagger

Да

Дата-центр (availability_zone)

availability_zone.id

d4p1

ИД дата-центра (ЦОД), в котором будет находиться сервер:


  • d3p1k01 дата-центр ru-central1-a
  • d4p1 дата-центр ru-central2-a
  • d5p1 дата-центр ru-central3-a
Да

availability_zone.name

ru-central2-a

Название дата-центра (ЦОД), в котором будет находиться сервер:


  • ru-central1-a
  • ru-central2-a
  • ru-central3-a
Да

availability_zone.description

ЦОД Москва

Описание дата-центра (ЦОД), в котором будет находиться сервер

Нет
Сеть (network_configuration)

network_configuration.use_external_network

true

Укажите true, чтобы сервер имел статический публичный IP-адрес в Интернете, но без доступа к локальной сети (публичный доступ).

Укажите false, чтобы сервер находился в локальной сети с возможностью доступа из сети Интернет (локальный доступ)

Нет. Если параметр не указан, по умолчанию будет false

network_configuration.bandwidth

500

Ограничение пропускной способности канала - от 100 до 10 000 Мбит/сек. Значение должно быть кратно 100

Да, если в параметре use_external_network указано true

network_configuration.toggle_shared_network

false

Укажите true, если нужно подключить сервер к подсети другого проекта (не того, в котором заказывается сервер).

Укажите false, если нужно подключить сервер к подсети проекта, в котором заказывается сервер

Нет. Параметр актуален, если в параметре use_external_network указано false


network_configuration.network.id

8596e8e4-e7f4-4af5-bbf5-55b96dc3ce50

Идентификатор сети, к которой будет подключен сервер.

Список идентификаторов сетей можно посмотреть с помощью запроса в Swagger

Да, если в параметре use_external_network указано false

network_configuration.subnet.id

65795365-2461-42a9-a3eb-aa992ec7ba0f

Идентификатор подсети, к которой будет подключен сервер.

Список идентификаторов подсетей можно посмотреть с помощью запроса в Swagger

Да, если в параметре use_external_network указано false

network_configuration.subnet.cidr

10.129.0.0/24

CIDR

Нет. Параметр актуален, если в параметре use_external_network указано false

network_configuration.subnet.name

default-ru-central2

Название подсети, к которой будет подключен сервер.

Список названий подсетей можно посмотреть с помощью запроса в Swagger

Нет. Параметр актуален, если в параметре use_external_network указано false

network_configuration.set_ip_address

true

Укажите true, если нужно задать IP-адрес сетевого интерфейса вручную. IP-адрес укажите в параметре requested_ip.

Укажите false, если нужно задать IP-адрес автоматически

Да, если в параметре use_external_network указано false

network_configuration.requested_ip

10.129.0.199

IP-адрес сетевого интерфейса

Да, если в параметре set_ip_address указано true
Публичный IP-адрес (параметры актуальны, если в параметре use_external_network указано false)

add_public_ip

true

Укажите true, если к серверу нужен доступ из сети Интернет. Иначе укажите false

Нет

create_public_ip

true

Укажите true, если серверу нужно автоматически присвоить IP-адрес из пула свободных публичных IP-адресов.

Укажите false, если серверу нужно присвоить публичный IP-адрес, указанный в параметре floating_ip_address

Да, если в параметре add_public_ip указано true

bandwidth

500

Ограничение пропускной способности канала - от 100 до 10 000 Мбит/сек. Значение должно быть кратно 100

Да, если в параметрах add_public_ip и create_public_ip указано true

public_ip.item_id

1c54e3cd-0b6d-4f01-a0b4-dade1888bd00

Идентификатор публичного IP-адреса.

Список идентификаторов публичных IP-адресов можно посмотреть с помощью запроса в Swagger

Да, если в параметре add_public_ip указано true и в параметре create_public_ip указано false

public_ip.order_id

cd4275f4-e121-4d1f-b796-e8b0c079de23

Идентификатор заказа публичного IP-адреса.

Список идентификаторов заказов публичных IP-адресов можно посмотреть с помощью запроса в Swagger

Да, если в параметре add_public_ip указано true и в параметре create_public_ip указано false

public_ip.floating_ip_address

80.85.250.149

Публичный IP-адрес, который нужно присвоить серверу.

Список созданных IP-адресов можно посмотреть с помощью запроса в Swagger

Да, если в параметре add_public_ip указано true и в параметре create_public_ip указано false
Политика размещения сервера на гипервизорах
add_placement_policytrue

Укажите true, если нужно указать политику размещения сервера на гипервизорах. Иначе укажите false

Да

placement_policy.item_id

90f65e4b-03c8-44c1-9056-b0b913631672

Идентификатор политики размещения.

Список идентификаторов политик размещения можно посмотреть с помощью запроса в Swagger

Да, если в параметре add_placement_policy указано true

placement_policy.order_id

09b4ed8d-2868-41f6-b1cb-fcd62da68a00

Идентификатор заказа политики размещения.

Список идентификаторов заказов политик размещения можно посмотреть с помощью запроса в Swagger

Да, если в параметре add_placement_policy указано true
SSH-ключи и cloud-init
ssh_keysb5dba483-b46e-4d7f-9278-1e4fec84b6cb

SSH-ключ для подключения к серверу.

Список проектных SSH-ключей можно посмотреть с помощью запроса в Swagger.

Список личных SSH-ключей можно посмотреть с помощью запроса в Swagger

Да, если в параметре add_user_data указано false.

Нет, если соблюдается одно из условий:


  • в параметре add_user_data указано true;
  • в параметре image.name указан один из образов:
    • Windows Server 2012_std
    • Windows Server 2016_std
    • Windows Server 2019_std
    • Windows Server 2019_core
    • Windows Server 2022_std

add_user_data

false

Укажите true, если нужно передать сценарий настройки сервера с помощью cloud-init. В параметре user_data напишите сценарий cloud-init в формате YAML или shell.

Иначе укажите false


Нет

user_data

#cloud-config
ssh_pwauth: true
users:
- name: qa
  gecos: QA User
  passwd: $y$j9T$3mh./8QBp1FtRBFmOGQ0e/$GGFkNSZe1W/iqrv7P8.TvrS5PDRgTL1m2U1Brg0QAA3
  shell: /bin/bash
  lock_passwd: false

Сценарий cloud-init в формате YAML или shell.

Объём текста до 16384 байт


Да, если в параметре add_user_data указано true

В этой статье

Мы ответили на ваш вопрос?