Мультипроектность: управление несколькими изолированными инфраструктурами в одном аккаунте

Добавили в CLO поддержку мультипроектности — теперь в рамках одного аккаунта можно создавать несколько несвязанных проектов. Каждый проект имеет собственную локальную сеть, изолированные ресурсы и настройки, что обеспечивает чёткое разделение инфраструктур без необходимости создания дополнительных учётных записей.

Эта функция пригодится тем, кто управляет различными клиентскими инфраструктурами, разрабатывает и поддерживает множество независимых сервисов или хочет структурировать большую инфраструктуру на логические блоки.

Основные возможности мультипроектности:

  • Создание проектов: до 5 проектов доступно по умолчанию. Для увеличения лимита необходимо обратиться в поддержку.
  • Управление: каждый проект можно независимо создавать, запускать, останавливать или удалять.
  • Идентификация проектов: теперь проекты можно именовать как удобно и оставлять к ним комментарии.
  • Лимиты: для каждого проекта можно установить индивидуальные квоты на ресурсы или использовать общие лимиты аккаунта.
  • Поддержка: при создании тикета можно указать, к какому проекту относится обращение.
  • Финансовый контроль: в таблице расходов добавлена фильтрация по проектам и типам операций, что упрощает учёт и планирование бюджета.

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

Обновления в Public API

Добавили новые эндпоинты для управления проектами и лимитами в документацию Public API.

Управление проектами

  • GET /v2/projects – получение списка проектов на аккаунте (впоследствии элементы этого списка могут быть использованы в качестве идентификаторов отдельных проектов для параметра object_id);
  • POST /v2/projects – создание нового проекта;
  • DELETE /v2/projects/{object_id} – удаление указанного в object_id проекта;
  • GET /v2/projects/{object_id}/detail – получение детальных сведений о проекте, указанном в object_id;
  • POST /v2/projects/{object_id}/start – запуск указанного в object_id проекта;
  • POST /v2/projects/{object_id}/stop – остановка указанного в object_id проекта;
  • PATCH /v2/projects/{object_id} – изменение имени проекта, указанного в object_id;
  • GET /v2/projects/{object_id}/networks – получение информации о сетях, принадлежащих проекту object_id;
  • GET /v2/projects/{object_id}/images – получение сведений об образах операционных систем, доступных для установки на проекте с идентификатором object_id.

Управление лимитами аккаунта и проектов

  • GET /v2/limits/projects – получение списка лимитов для каждого проекта на аккаунте;
  • GET /v2/limits – получение списка доступных лимитов аккаунта;
  • GET /v2/stat – статистика по ресурсам аккаунта;
  • PATCH /v2/limits – установка лимитов для любого проекта на аккаунте;
  • Параметры вызова содержат объекты в виде пары из идентификатора проекта object_id и устанавливаемого числового лимита;
  • GET /v2/projects/{object_id}/limits – получение сведений о лимитах для конкретного проекта object_id;
  • GET /v2/projects/{object_id}/consumption – получение списка ресурсов, используемых проектом object_id;
  • PATCH /v2/projects/{object_id}/limits – изменение действующих лимитов для указанного в object_id проекта.

Также обновили документацию Public API, связанную с фичами, выпущенными в 2025 – ограничением удаления IP-адресов и изменениями в работе гигабитного канала.

Изменения, связанные уже работающими фичами 

  • Добавлен эндпоинт /v2/projects/{object_id}/params – получение параметров проекта. В нём также появился новый параметр «days_before_remove_ip», который отражает количество дней, через которое можно будет удалить конкретный адрес;
  • При попытке вызова DELETE /v2/addresses/<id>, если адрес является внешним и создан менее 7 дней назад, будет возвращаться ошибка;
  • В эндпоинте POST /addresses/{object_id}/attach убрана возможность изменять ширину канала при подключении внешнего адреса к серверу. При попытке передать поле bandwidth_max_mbps запрос выполнится успешно, но изменений это поле не повлечёт – это необходимо для обеспечения обратной совместимости;
  • В эндпоинте POST /projects/{object_id}/servers убрана возможность изменять ширину канала. При попытке передать поле bandwidth_max_mbps в списке addresses запрос выполнится успешно, но изменений это поле не повлечёт – это необходимо для обеспечения обратной совместимости;
  • Эндпоинт POST /addresses/{object_id}/bandwidth теперь способен менять ширину канала любого внешнего адреса, а не только подключенного к серверу. Исключение составляет внешний адрес виртуального роутера, его ширина канала статична (100 Мбит/с.).

Связанная информация в Базе Знаний: