Faberlic – российская косметическая компания, работающая по модели прямых продаж, одна из самых крупных в мире – в 2017 году в мировом рейтинге компаний, ведущих бизнес по этой модели, Faberlic занимала 38-е место. Представительства Faberlic открыты в 20 странах, с компанией сотрудничают более миллиона консультантов, ее продукцией пользуется около 8 млн потребителей.
Активно развивающийся бизнес Faberlic требует и соответствующей ИТ-инфраструктуры. При реализации новой версии основной учетной системы в компании взяли за основу облачную микросервисную архитектуру. Почему именно ее, как осуществляется проект и какие еще задачи в Faberlic доверяют облакам, рассказал Валерий Капленко, директор по ИТ компании. А на форуме ИНФРАСТРУКТУРА 2019, который издательство «Открытые системы» проводит 18 июня, о деталях использования облаков и гибридной инфраструктуры в Faberlic можно будет узнать от CTO компании Романа Варникова.
По словам Валерия Капленко, активно развивающийся бизнес Faberlic требует и соответствующей ИТ-инфраструктуры; при реализации новой версии основной учетной системы в компании взяли за основу облачную микросервисную архитектуру |
- Расскажите о бизнесе компании, какие требования он предъявляет к ИТ-инфраструктуре?
Модель доверительных, или прямых продаж основывается на том, что человек больше доверяет персональным рекомендациям, чем рекламе. Консультант сетевой компании напрямую предлагает клиенту то, что тому нужно. К сожалению, бизнес-приложений, способных работать с этой моделью, практически не существует, и компаниям приходится разрабатывать собственные решения.
Наша учетная система создавалась, когда у компании было 200 маленьких складов. Для каждого такого склада велась небольшая база данных на Oracle Express, информация из этих баз собиралась и реплицировалась в центральную базу данных.
Это был не очень эффективный подход. Наши дистрибьюторы объединены в так называемое MLM-дерево (Multi Level Marketing), и продажа в конце «ветки» дерева, скажем, в Монголии, влияет на бонусы дистрибьютора, который является «наставником» этой ветки. Такую информацию необходимо собирать онлайн; в первоначальной же версии системы это делалось путем закачки файлов, а репликация работала не всегда, иногда приходилось использовать почту для обмена данными.
Поэтому было решено создать систему, которая объединила бы все данные о маркетинговых бонусах всех консультантов во всех странах, где работает Faberlic. Такая система разрабатывалась около десяти лет полностью on-premise на основе базы данных Oracle с надстройкой в виде веб-клиента.
Переход на эту систему упростил открытие новых точек выдачи, привлечение новых консультантов. Но и бизнес компании сильно изменился. C распространением Интернета и различных средств электронных коммуникаций стала очевидной потребность покупателей самостоятельно оформлять заказы. Если раньше консультант должен был очно встретиться с клиентом, проконсультировать его, принять и реализовать заказ, то теперь такое общение может происходить по Skype или по телефону, а при желании клиент и сам может заказать все, что ему нужно, и в некоторых странах доставку берет на себя компания.
Со сменой бизнес-модели вместо 200 маленьких складов мы получили 20 больших, а вместо десятка тысяч консультантов заказы стали оформлять 2,5 млн человек по всему миру. Прежняя архитектура оказалась неадекватной требованиям бизнеса. Попытки спасти ситуацию закупкой дополнительного оборудования результата не дали.
Проведя тщательный анализ состояния рынка и планов развития бизнеса на ближайшие годы, мы пришли к выводу о необходимости кардинальных изменений и переводе системы на сервисную архитектуру.
- В чем основные особенности новой архитектуры?
Это микросервисность и масштабирование. Все бэк-офисные процедуры – доставка, платежи, расчет вознаграждений, обслуживание тысячи пунктов выдачи, куда консультанты приходят за заказами, многочисленные технические сервисы – разрабатываются и размещаются в облаке как микросервисы. При этом ключевым требованием было обеспечить возможность наращивания ресурсов с учетом различных сценариев развития бизнеса.
Компания выбрала облако Oracle Cloud, поскольку предыдущая версия основной учетной системы реализована на базе решений Oracle, и у нас большой опыт работы с продуктами этого вендора и его партнерами.
- Почему именно микросервисы, что дает такой подход?
Во-первых, отказоустойчивость. Выход какого-то сервиса из строя не приводит к остановке бизнеса. Наиболее критичные для бизнеса сервисы можно дублировать, а те, что не требуют моментального восстановления, будут работать в режиме Disaster Recovery. Например, если не оформляется заказ или невозможно провести платеж, это критично для бизнеса, а если не считается вознаграждение или не отправляются чеки, то задержка даже на несколько дней больших проблем не создаст. Микросервисность позволяет реализовать дифференцированный, оптимальный подход к отказоустойчивости.
Во-вторых – то самое масштабирование. Гораздо проще масштабировать отдельный облачный сервис, чем всю систему в целом, с точки зрения как технологических, так и человеческих ресурсов. Продуктовую команду сервиса гораздо проще расширять, чем продуктовую команду целого приложения.
И в-третьих – гибкость. Реализуя большую систему, ИТ-директор должен определять приоритеты разработки, оценивая, какая функциональность более критична, обещает большую прибыль и т.д. Бизнес готов инвестировать в ИТ, когда это касается конкретного проекта. Скажем, подразделение продаж не будет вкладываться в полную переделку системы ЕRP под свою задачу, но пойдет на разработку определенного сервиса, помогающего решить эту задачу в необходимые сроки.
Больше подробностей о работе с гибридной инфраструктурой, объединяющей различные облачные и локальные решения, можно будет узнать 18 июня из выступления Романа Варникова, CTO компании Faberlic, на форуме ИНФРАСТРУКТУРА 2019. |
Пример для нашей системы – подключение службы доставки. Микросервисная архитектура позволяет создать для этого отдельный сервис, подключить его через механизм Discover API и быстро начать с ним работать. Такая гибкость очень важна для бизнеса.
- На какой стадии находится переход к микросервисной архитектуре?
Сейчас проходит пилотное развертывание. Мы «отправили» в облако контейнеры, начали трансляцию данных, в облачных средах разработки ведется работа над различными сервисами. Первые сервисы планируем запустить в июле, до конца года намечено перевести в облако наиболее критичные сервисы и в течение 2020 года – полностью развернуть всю архитектуру.
Облачная архитектура микросервисов – часть большого проекта обновления корпоративной системы «Партнер 2.0», в который входит также фронт-офисная часть на SAP Hybris, разработка мобильного приложения и другие взаимосвязанные компоненты.
- Микросервисы в Oracle Cloud – не единственный облачный компонент ИТ-инфраструктуры компании?
Мы любим облака и работаем с разными их вариантами. Мы первыми в России развернули в Microsoft Azure бизнес-приложение в стадии эксплуатации – BI-систему, которую продолжаем развивать на облачной платформе. Есть свое частное облако, для ряда проектов используем публичные облачные сервисы «Ростелекома».
- Стыковка многочисленных облаков не создает проблемы?
Это сложная, интересная и многогранная задача, которая возложена на наше инфраструктурное подразделение.
Есть единая для всех облаков система сетевой безопасности. Нетривиальной задачей является отказоустойчивость в облаках. Когда дело касается отказоустойчивости сервера или кластера, вы мониторите производительность этой машины и при этом видите ее сетевые подключения. В облаках же вы сетью фактически не управляете. На рынке мы пока не нашли готового решения, помогающего выстроить систему проактивного мониторинга связей между различными облаками, и потому самостоятельно исследуем этот вопрос.