2024/07/07 10:22:41

Надежная ИТ-инфраструктура для финтеха: как перевести на российский Kubernetes крупнейшую финансовую платформу

Первый в России проект по внедрению Deckhouse Kubernetes Platform в финтех-компании, реализованный командами ЕДИНОГО ЦУПИС и «Флант», был отмечен наградой TAdviser IT Prize в номинации «Инфраструктура в финтехе: проект года». О том, как перевести на отечественную Kubernetes-платформу один из крупнейших российских финтех-проектов и построить отказоустойчивую геораспределенную архитектуру с уровнем SLA до 99,99%, рассказывают Александр фон Розен, технический директор, член правления ЕДИНОГО ЦУПИС, и Александр Титов, управляющий партнер компании «Флант».

Александр
фон Розен
Мы существенно сократили время и количество ресурсов благодаря тому, что выбрали готовое решение и нашли команду с глубокой экспертизой.

Для начала, расскажите, пожалуйста, для каких целей ЕДИНОМУ ЦУПИС потребовалось внедрить Kubernetes?

Александр фон Розен: ЕДИНЫЙ ЦУПИС — это высоконагруженный и высокодоступный финтех-проект, обрабатывающий более 2,5 млн транзакций в сутки для 15 млн пользователей по всей России. Наша компания оказывает платежные услуги в сфере регулируемых государством развлечений. Эта отрасль на сегодняшний момент представлена легальными российскими букмекерскими конторами и "Национальной Лотереей", а мы являемся для них единой финансовой платформой. Поэтому мы обязаны обеспечивать высочайший уровень доступности сервисов.

Наша доступность по результатам прошлого и позапрошлого года превысила 99,99%, в том числе благодаря использованию Kubernetes.

Масштабирование платежного сервиса ЕДИНОГО ЦУПИС привело к усложнению архитектуры: возросло количество ручных операций, стало сложнее контролировать продакшн-площадки, возросла энтропия. Мы приняли решение развернуть современный оркестратор Kubernetes на всех промышленных площадках для более чем 160 сервисов.

Kubernetes выполняет несколько базовых функций. Прежде всего это автоматизация рутинного труда DevOps-инженеров, серверных инженеров, системных администраторов — специалистов, которые обслуживают промышленные площадки. Многие из операций носят рутинный характер и могут выполняться автоматическими системами. Затем — повышение отказоустойчивости и производительности. Kubernetes очень неплохо умеет управлять на лету масштабированием ресурсов и аварийными переключениями. И, наконец, формирование технологического, инструментального задела на будущее.

Вы являетесь высоконагруженным финтех-проектом, к которому предъявляются высокие регуляторные требования по безопасности и устойчивости. Были ли у вас особенные требования к внедрению?

Александр фон Розен: Выбирая решение, мы ориентировались прежде всего на высокую степень надежности. Также нам важна была отчуждаемость от вендора — мы должны быть уверены, что при необходимости сможем продолжать работу или легко мигрировать на другой продукт. Deckhouse Kubernetes Platform совместим с базовой версией Kubernetes, а значит мы легко сможем мигрировать на оригинальный дистрибутив платформы. Кроме того, мы ориентировались на отечественные, российские, решения, которые имеют квалифицированную техническую поддержку и желательно из числа тех, кто непосредственно работает над этим решением. Команда «Флант» в целом работает над развитием Kubernetes в России, не только над Deckhouse.

Одно из наших специфических отраслевых требований к ИТ-решениями — это соответствие как международным, отраслевым нишевым стандартам, так и требованиям российских регуляторов.

Самый серьезный вызов здесь — полное соответствие группе стандартов PCI DSS, которые регламентируют сбор, хранение, обработку и передачу данных платежных карт.

И я могу быть уверен, что Deckhouse полностью всем этим требования соответствует: и требованиям сегментации и прозрачности кодовой базы, и возможности реализации грамотного процесса управления изменениями и так далее.

Как вы выбирали подрядчика и как реализовывали проект, учитывая, что опыта внедрения таких продуктов в финтех-индустрии еще не было?

Александр фон Розен: Прежде всего мы искали команду, а потом уже организацию. Нам нужен был не просто подрядчик, а технологический партнер, команда, которая занимается разработкой программного обеспечения, потому что внедрение мы осуществляли своими силами, консультируясь с коллегами.

Принципиальным моментом, как я уже сказал, для нас была отчуждаемость продукта, наличие хорошей сопроводительной документации и команда, к которой можно обратиться с любыми вопросами и совместно решать индивидуальные проблемы. Так, коллеги из «Флант» помогли нам постепенно внедрить Deckhouse. Мы разработали достаточно сложный, не типовой сценарий внедрения — наша система 24/7 параллельно работала в двух контурах, с Kubernetes и без него, на тот случай, чтобы выход из строя Kubernetes либо какое-то непредсказуемое поведение не повлекли за собой перерыв в обслуживании.

Мы редко опираемся на какой-то отраслевой опыт: ввиду нашего уникального сегмента он не всегда для нас подходит. В своем технологическом развитии мы ориентируемся скорее на BigTech, стараемся использовать тот стек, который используют крупнейшие технологические компании современности. И по этой причине мы не очень ограничены какими-то отраслевыми практиками либо отраслевыми привычками, традициями.

Александр
Титов
Технологии уровня Kubernetes, позволяющие создавать гибкую инфраструктуру, — это база для инноваций.

Как меняются запросы заказчиков на создание сложной отказоустойчивой инфраструктуры?

Александр Титов: Основной запрос при создании сложной инфраструктуры — это компетенции по упаковке собственных приложений в Kubernetes. Такой опыт есть не у многих заказчиков, поэтому его ищут во внешних командах. Еще один важный фактор — надежность. На российском рынке есть как минимум семь дистрибутивов Kubernetes, но только мы имеем опыт в продакшене таких решений более 3 лет. Это очень важно для многих заказчиков.

Еще один фактор в большей степени относится к сложности, чем к отказоустойчивости проектов, — это безопасность. Управление контейнеризацией — это довольно новый подход. И для специалистов по информационной безопасности на стороне заказчика не всегда очевидно, как с этим можно работать. В таких случаях мы обсуждаем конкретные решения под каждый запрос, показываем соответствие имеющимся требованиям. Например, частые запросы со стороны финтех-компаний — это сертификация и соответствие стандартам работы с платежными данными, таким как PCI DSS.

Какие технологические тренды подогревают интерес к дистрибутивам Kubernetes в компаниях?

Александр Титов: Разработка Cloud native приложений — это один из основных трендов, который двигает всю индустрию. Практически весь современный российский софт создается по стандартам Cloud native. А Kubernetes является для него средой исполнения.

Второй важный тренд — это DevSecOps, перестройка контроля за безопасностью от тотального запрета к выработке гибких, программно определяемых политик, которые позволяют обеспечивать безопасность внутри компании. И здесь Kubernetes также дает огромное количество возможностей.

Третий технологический тренд — это в целом движение в облака, в использование Commodity Hardware, недорогого, универсального и легко заменяемого оборудования для построения сетевого ИТ-ландшафта, хранения данных. Такая гиперконвергентная инфраструктура позволяет экономить за счет гибкого распределения ресурсов и развитие этого тренда также подогревает интерес рынка к Kubernetes.

Какие преимущества для бизнеса дает внедрение Deckhouse Kubernetes Platform?

Александр Титов: Внедрение продукта как полноценного дистрибутива, а не разрозненных Open Source-технологий, дает бизнесу определенную стандартизацию процессов, регламентирует развертывание и создание ПО внутри компании. Например, мы говорим не только об автоматизации рутинных процессов, но и об ускорении поиска и найма специалистов. На рынке можно найти сотни разработчиков, имеющих опыт работы с Deckhouse. При этом за онбординг такого сотрудника будет отвечать не Open Source-сообщество, а вендор продукта, который может обучить специалиста необходимым навыкам.

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

Каких результатов удалось добиться после внедрения Deckhouse Kubernetes Platform в ЕДИНОМ ЦУПИС?

Александр фон Розен: Мы перевели все наши микросервисы на инфраструктуру под управлением Deckhouse Kubernetes Platform, создали отказоустойчивую геораспределенную архитектуру, объединив четыре отдельных кластера в единый service mesh на базе Istio. Около десятка кластеров развернули для инфраструктурных нужд.

Мы существенно сократили время и количество ресурсов, которые потребовались для внедрения платформы оркестрации, благодаря тому, что выбрали готовое решение и нашли команду с глубокой экспертизой. Deckhouse Kubernetes Platform позволила команде ЕДИНОГО ЦУПИС сконцентрироваться на разработке и решении бизнес-задач, а не на погружении в сложности устройства Kubernetes и технологий вокруг него.

Как в целом вы оцениваете российский рынок инфраструктурных решений, как оцениваете опыт вендоров по их внедрению?

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

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

Заказчики плотно изучают нашу экспертизу, видят наши компетенции и ценят тот факт, что мы являемся контрибьютором в мировом сообществе Kubernetes.

Александр фон Розен: Набор инструментов и технологий, которыми оперируют ИТ-компании, гораздо шире, чем решения ушедших с нашего рынка западных поставщиков. И он построен отнюдь не на проприетарном ПО. Рядом есть огромная ниша — открытое программное обеспечение, которое, за редким исключением, не контролируется какой-либо отдельной коммерческой организацией или группой западных государств. И российские специалисты входят в число тех, кто работает над open source решениями.

Раньше крупный бизнес, enterprise-сегмент ориентировался, прежде всего, на платное программное обеспечение — производители проприетарного ПО давали определенные гарантии своим пользователям. Сейчас многие компании обратили внимание на open source решения или на те организации, которые на базе открытого ПО создают и поддерживают собственные продукты.

Я считаю, что называть миграцию на open source импортозамещением в большинстве случаев неверно. В нашем конкретном случае мы достигаем технологического суверенитета за счет использования тех open source продуктов, которые поддерживаются хотя бы частично российскими командами. Флант — очень хороший пример такой команды.

Как меняется рынок, какие технологии станут драйверами развития на ближайшие годы?

Александр фон Розен: Мы наблюдали несколько лет назад ажиотаж вокруг ИИ, последний год видим уже устойчивое взрывное развитие соответствующего инструментария. Все больше компаний внедряют инструменты на базе искусственного интеллекта, поэтому, я думаю, нужно ожидать проникновения ИИ в сегмент DevOps-инструментов и во все смежные сферы.

Что посоветуете компаниям, которые в данный момент выбирают партнеров для реализации сложных высоконагруженных проектов?

Александр фон Розен: Нужно смотреть прежде всего на технологическую команду — оценивать компетенции сотрудников и реальные достижения, подтверждающие их опыт. Важно и то, насколько комфортна коммуникация с командой, насколько легко и приятно будет вашим инженерам сотрудничать с партнером. Ведь сложные технологические вопросы намного легче решаются в рамках продуктивного и дружеского диалога.

Мы подбираем технологических партнеров исходя в том числе и из этих стандартов, и до сих пор ни разу не прогадали.

Александр Титов: Для того чтобы совместный с заказчиком проект был успешным, важно точно понимать необходимость в Cloud native технологиях внутри компании и оценивать готовность к их использованию. Для многих технологическая зрелость в плане использования Cloud native технологий все еще является вызовом. И в таких случаях важно подключать экспертизу как технологического партнера, так и вендора, для того чтобы сгладить все шероховатости, которые могут возникнуть и на этапах подготовки, внедрения или адаптации Kubernetes.