«Инферит Облако» (ГК Softline)
Компьютеры и интернет
Россия, Москва
Ноябрь 2024
«Инферит» — российский вендор оборудования и программного обеспечения для IT-инфраструктуры и информационной безопасности, входит в группу компаний Softline. Его подразделение «Инферит Облако» разрабатывает и помогает внедрять облачные и виртуальные технологии.
Команда «Инферит» предложила нам помочь с разработкой простого и понятного инструмента, с помощью которого клиенты компании через личный кабинет смогут управлять виртуальными машинами, сетями и другими облачными продуктами, даже не имея специальных знаний и навыков.
— Создать брендированный и удобный личный кабинет вместо веб-интерфейса OpenStack Horizon.
— Сократить задержки при взаимодействии с OpenStack.
— Создать такую структуру системы, чтобы команда проекта могла легко добавлять в нее новые продукты.
— Разработать и реализовать тарификацию внутри личного кабинета, а также интегрировать ее с биллингом «Инферит Облака».
Технологическая база и интеграция
Фронтовая часть личного кабинета была реализована на базе TypeScript и React, а в бэкенд-части использовали Python и фреймворк Django. Эти технологии позволили построить масштабируемую архитектуру с гибкой интеграцией.
Создание и управление виртуальными машинами. Теперь пользователи могут создавать новые виртуальные машины, выбирать конфигурации — операционные системы и диски — и управлять ими через интуитивно понятный интерфейс.
Функция управления сетями стала одной из самых сложных фич проекта. С ее помощью пользователи объединяют виртуальные машины в сети и управляют их конфигурациями.
Система позволяет пользователям загружать собственные образы виртуальных машин и использовать их для создания новых серверов. Это обеспечивает гибкость для различных сценариев использования.
По виртуальным машинам можно просмотреть удобные графики по выбранным параметрам — например, оперативная память, нагрузка на процессор, дисков и т. д.
Вместе с командой «Инферит Облака» мы разработали фичи для тарификации и расчета стоимости продуктов. Расчет происходит автоматически при добавлении ресурсов. В личном кабинете доступна детализация расходов.
В кабинете администратора есть возможность отслеживать приобретенные продукты и затраты на их использование за всё время.
— Удобство для пользователей
Разработанный личный кабинет упростил взаимодействие с облаком. Теперь пользователи могут легко создавать и настраивать виртуальные машины и сети через интуитивно понятный интерфейс — вопреки сложности OpenStack.
— Улучшенная оптимизация и производительность
Многие действия, которые были реализованы с интеграций с OpenStack, занимали слишком много времени. Чтобы это исправить, мы предприняли следующие шаги:
1) Кеширование данных и дублирование сущностей OpenStack в собственной базе данных для ускорения обработки запросов.
2) Добавление значительной доли асинхронного API. Мы решили вынести все «тяжелые» задачи в асинхронные таски на базе Celery, а затем создали к нему понятную абстракцию, чтобы клиент в виде фронта всегда мог одинаково работать с любыми асинхронными вызовами API.
— Гибкость и масштабируемость
Архитектура системы позволяет легко добавлять новые функции и адаптировать проект для различных нужд клиентов.
Проект был уникален благодаря интеграции с OpenStack и работе с облаком. Мы столкнулись с рядом технических вызовов, включая необходимость работы с сырыми данными и оптимизации кеширования. Но несмотря на это, справились с поставленными задачами и смогли сделать систему более быстрой и стабильной.
![]()
Сергей Самоукин
Коммерческий директор
Проект был масштабным и требовал быстрой реализации. Поэтому мы одновременно подключили несколько команд. Но несмотря на это, процесс был комфортным, и мы смогли создать MVP в кратчайшие сроки. В итоге получили достойную базу, которую теперь можно комфортно развивать: внедрять новые фичи и интегрировать новые облачные продукты.