​Как увеличить рентабельность маркетплейса c помощью FinOps

Добрый день. Я Вячеслав Бессонов, СЕО IT-интегратора Hilbert Team. В этой статье я расскажу, как мы помогли крупному маркетплейсу с помощью FinOps оптимизировать облачные расходы и увеличить рентабельность бизнеса на 3,7%. Статья будет полезна CTO, CIO, CEO и специалистам, отвечающим за облачную инфраструктуру.

Изображение: Freepik
Изображение: Freepik

Вследствие технологического прогресса многие компании активно мигрируют в облака. Например, за прошлый год облачный рынок в России вырос на 40%. Работа в облаке во многом отличается от работы с on-premise инфраструктурой, и это стало определенным вызовом для компаний и руководителей бизнеса. В ответ на этот вызов возник новый подход к управлению облачными затратами – FinOps.

В России FinOps находится на ранней стадии развития, но на мировом рынке в 2023 году он стал приоритетным направлением в сфере облачных технологий, что подтверждает исследование аналитиков из Flexera.

О проекте

Наш заказчик — международный маркетплейс родом из Казани, один из первых сервисов с бесплатной доставкой товаров за один день. В экосистему компании входят каталог товаров, логистика, доставка, сеть пунктов выдачи и IT-решения для работы c B2B и B2C-клиентами. Система выдерживает highload уровень нагрузки — ежедневно на платформе совершаются тысячи покупок. Основная часть инфраструктуры располагается в Yandex Cloud.

В 2022 году представители маркетплейса осознали, что недостаток контроля над облачными расходами замедляет масштабирование бизнеса. Они обратились к Hilbert Team за проведением FinOps-оптимизации.

Как решали задачу

Команда экспертов Hilbert Team провела оптимизацию:

  • числа ресурсов в составе облачной инфраструктуры,
  • утилизации облачных ресурсов,
  • архитектуры облачной инфраструктуры.

Расскажем о каждом этапе подробнее.

Этап 1. Оптимизировали число ресурсов

Обычно на этом этапе FinOps-команда делает гипотезы, как сократить число используемых ресурсов. Предложения мы отдаем инженерным командам заказчика, потому что только они знают, нужна ли компании каждая виртуальная машина и Kubernetes-кластер, или от них можно отказаться.

Мы уже работали с командой заказчика ранее и успешно помогли выполнить миграцию IT-инфраструктуры и сервисов в Yandex Cloud. Это ускорило процесс: у нас уже была документация, касающаяся инфраструктуры, и понимание всех бизнес-процессов в компании. IT-аудит, с которого мы всегда начинаем FinOps-оптимизацию, в данном случае не требовался.

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

Совместно с инженерными командами приняли решения удалить неиспользуемые ресурсы и перенести редко используемые данные в более дешевые хранилища. Благодаря этим действиям стоимость инфраструктуры снизилась на 16%.

Этап 2. Оптимизировали утилизацию ресурсов

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

Одним из основных направлений работы данного этапа была оптимизация стоимости Kubernetes-кластеров. В процессе работы наша команда заметила, что узлы кластеров нагружены неравномерно, что приводило к простою части ресурсов. Для оптимизации утилизации потребовалось выполнить детальный анализ требований к ресурсам всех микросервисов платформы и подобрать такую конфигурацию узлов, чтобы всем микросервисам было достаточно ресурсов для корректной работы, а общая нагрузка узлов стала более равномерной.

Также наша команда обнаружила неэффективность Elasticsearch-кластеров и приступила к оптимизации их стоимости. Для этого были настроены ILM (Index Lifecycle Management) политики для архивации старых и неиспользуемых данных, что позволило снизить нагрузку на Elasticsearch и уменьшить число их ресурсов, а соответственно и стоимость.

На 34% позволила сократить стоимость облачной инфраструктуры оптимизация Kubernetes и Elasticsearch кластеров.

Дополнительно, замена Intel Broadwell на платформу Intel Ice Lake для части виртуальных машин и нод Kubernetes-кластеров позволила уменьшить стоимость облачной инфраструктуры еще на 9%.

Этап 3. Оптимизировали архитектуру

Данный этап заключается в переработке архитектуры облачной инфраструктуры. Примерами изменений, которые дают хорошие результаты являются: использование прерываемых виртуальных машин, переход на serverless-архитектуры и т.д.

Наша команда совместно с заказчиком остановила свой выбор на первом подходе. Мы выполнили оптимизацию архитектуры окружений для R&D и перешли на использование прерываемых виртуальных машин для Kubernetes-кластеров, использующихся для тестирования. Это позволило уменьшить стоимость тестовых окружений в 3 раза.

Какой результат получил заказчик

Общая стоимость облачной инфраструктуры маркетплейса оптимизирована на 23%.

Рентабельность валовой прибыли увеличилась на 3,7%.

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

Если вы захотите глубже погрузиться в тему FinOps, загляните в эту таблицу, где мы собрали для вас полезные материалы на русском и английском языке и сегментировали их по уровню знаний: новичок и продвинутый. А если хотите задать вопрос лично автору, напишите в Telegram.

88
5 комментариев

Яндекс облако - звучит конечно прикольно. Но по факту, те проекты, которые я встречал на нем - работают странно по скорости работы сети. Распределенности там не хватает и ответ сервера сайта из Владивостока больше секунды - это неправильно.

1
Ответить

Здравствуйте, Алексей! Для оптимизации сокращения времени загрузки сайтов вы можете использовать сервис Yandex Cloud CDN (https://cloud.yandex.com/ru/services/cdn), который включает в себя 140+ CDN-серверов, ускоряющих загрузку вашего контента по всему миру.

1
Ответить