Заказ сервера OpenStack (через API)
Чтобы заказать сервер на базе OpenStack:
- Создайте сервисный аккаунт.
- Создайте API-ключ.
- Для выполнения API-запросов получите сессионный токен.
- Для заказа сервера (instance) выполните POST-запрос согласно примеру:
где:
<ID_ПРОЕКТА> — идентификатор проекта.
- <ТОКЕН> — сессионный токен, полученный в шаге 3.
Параметры
| Параметр | Пример значения | Описание | Обязательный? |
|---|---|---|---|
| project_name | proj-7jokmecsqr | Идентификатор проекта | Да |
| product_id | e6fa78c9-2ee1-4f9e-b86c-5d7246f38526 | Идентификатор продукта | Да |
| name | server1 | Имя сервера. Требования к имени сервера см. в разделе Заказ сервера | Да |
| description | Сервер для тестирования приложений | Описание сервера | Нет |
| Образ сервера (image) | |||
image.id | cf85e269-d367-4296-b07a-a1031f128a01 | Идентификатор образа сервера. Список идентификаторов образов можно посмотреть:
Если вы хотите использовать образ, который самостоятельно загрузили или создали из диска, то ИД такого образа можно получить с помощью запроса в Swagger | Да |
image.name | AltLinux10SP | Имя образа сервера. Список имён образов можно посмотреть:
Если вы хотите использовать образ, который самостоятельно загрузили или создали из диска, то имя такого образа можно получить с помощью запроса в Swagger | Да |
Конфигурация сервера (flavor) | |||
| flavor.id | cf3e4230-0957-491d-822d-7f83e43984fb | Идентификатор конфигурации сервера. Список идентификаторов конфигураций можно посмотреть:
| Да |
| flavor.ram | 12288 | Объём оперативной памяти в МБ. Объём оперативной памяти у конфигураций можно посмотреть:
| Да |
| flavor.gpus | 0 | Количество GPU-процессоров. Для 1 сервера можно заказать 1, 2, 4 или 8 GPU-процессоров | Нет |
| flavor.name | b5.large.6 | Имя конфигурации сервера. Список имён конфигураций можно посмотреть:
| Да |
| flavor.vcpus | 2 | Количество процессоров (vCPU). Количество процессоров у конфигураций можно посмотреть:
| Да |
Зона доступности (region) | |||
| region.id | 02d93c85-e2b8-4708-bb16-1cff29f30af1 | Идентификатор зоны доступности:
| Да |
| region.name | ru-central2 | Название зоны доступности:
| Нет |
| 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 | ИД дата-центра (ЦОД), в котором будет находиться сервер:
| Да |
availability_zone.name | ru-central2-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_policy | true | Укажите 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_keys | b5dba483-b46e-4d7f-9278-1e4fec84b6cb | SSH-ключ для подключения к серверу. Список проектных SSH-ключей можно посмотреть с помощью запроса в Swagger. Список личных SSH-ключей можно посмотреть с помощью запроса в Swagger | Да, если в параметре add_user_data указано false. Нет, если соблюдается одно из условий:
|
add_user_data | false | Укажите true, если нужно передать сценарий настройки сервера с помощью cloud-init. В параметре user_data напишите сценарий cloud-init в формате YAML или shell. Иначе укажите false |
|
user_data |
| Сценарий cloud-init в формате YAML или shell. Объём текста — до 16384 байт | Да, если в параметре add_user_data указано true |