Mail.ru Cloud Solutions
Продукты

KGK: после миграции в облако надежность наших сервисов выросла в 3 раза

Сервис
Global
Сфера деятельности
IT и разработка, логистика
Объем данных
6 ТБайт

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

Компания на рынке уже 12 лет. ПО, разработанное за это время, процессы его создания и эксплуатации морально устарели — потребовался переход на новую архитектуру. Ранее серверная часть Global работала на железе, сначала On-Premise, затем на Colocation. Но этот архитектурный подход достиг своих лимитов, и в KGK решили отказаться от железных серверов в пользу облачной платформы Mail.ru Cloud Solutions.

Миграция прошла без даунтайма, все данные перенесены силами одного DevOps-инженера. После переезда надежность системы мониторинга KGK выросла в 3 раза, а компания сократила убытки, ранее случавшиеся из-за перебоев в работе сервисов. Как все прошло, рассказал генеральный директор KGK Александр Цыганков.

Александр Цыганков
генеральный директор

Развиваем решение для мониторинга транспорта

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

У нас нет «черных» пятниц и внезапных всплесков нагрузки. Данные поступают со множества датчиков, установленных в транспортных средствах, так что они накапливаются постепенно и предсказуемо. Объём этих данных, таким образом, масштабируется по мере роста клиентской базы и запуска новых сервисов.

Нам потребовался переход на современную архитектуру

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

В 2006 году систему мониторинга Global мы запустили всего на нескольких серверах — они располагались в том же помещении, где сидели наши инженеры. Позднее, когда бизнес подрос, мы переехали в дата-центр: часть серверов — собственные, часть — арендованные. Их обслуживал наш системный администратор. Но по мере роста мы упёрлись в стандартные ограничения владения собственным железом: возрастание нагрузки на службу эксплуатации, сбои, ведущие к убыткам и репутационным потерям, возрастание стоимости владения. Так мы пришли к идее облака.

Выбор облачной платформы

Когда встал вопрос о выборе IT-инфраструктуры для системы мониторинга, партнеры предложили нам облако. Мы рассмотрели предложения нескольких провайдеров и в итоге остановились на Mail.ru Cloud Solutions. Эту облачную платформу выбрали по нескольким причинам:

  • Mail.ru Cloud Solutions — гиперскейлер с собственными дата-центрами и высоким уровнем SLA, он составляет 99,95%.
  • IT-инфраструктура платформы соответствует ФЗ-152, так что можно хранить персональные данные — для системы мониторинга транспорта это критично.
  • Независимые каналы связи и их большая пропускная способность: MCS находится в партнёрстве с Мегафоном и обеспечивает надёжную передачу данных от любых устройств и между любыми точками.
  • К этому добавляется безлимитный трафик, что интересно при объёмах трафика, которые генерируют наши устройства.
  • Возможности быстрого масштабирования инфраструктуры.
  • Хорошая техподдержка: наши специалисты и эксперты Mail.ru Cloud Solutions общаются в Telegram-чатах в реальном времени. В нем оперативно получаем ответы на вопросы и решаем проблемы.

PaaS позволяют легко масштабировать систему

В основе нашей системы мониторинга — базы данных, в них поступают данные с трекеров, установленных в машинах. На основе этих данных формируются отчеты для клиентов. Так что в облаке Mail.ru Cloud Solutions мы используем несколько решений:

  • Базы данных ClickHouse и MongoDB — для хранения клиентских данных.
  • Виртуальные машины — в качестве инфраструктурной основы для приложений.

Базы данных в итоге мы используем в виде платформенных решений (PaaS). Выбор обусловлен удачной архитектурой нашего приложения. Нам не требуется специфическая настройка OC или баз данных, так что PaaS «из коробки» покрывает 90% наших потребностей, оставшиеся 10% реализуем на виртуальных машинах.

Преимущества PaaS — в ситуациях, когда требуется масштабирование IT-систем:

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

Перенос в облако 6 ТБайт данных без даунтайма

В облако мы мигрировали без даунтайма, данные переносили в три этапа: сначала фронтенд, затем бэкенд, наконец — базы данных и АТС.

Всего у нас было 6 ТБайт данных, а переезд занял около 4-5 месяцев. Такой срок объясняется тем, что часть инфраструктуры была старой, объем данных — большим, а миграцией занимался один DevOps-инженер. Впрочем, это соответствовало нашим ожиданиям от миграции.

Этапы миграции:

  • Фронтенд. Задача в целом была простой — на перенос и тестирование потребовалось около трех недель.
  • Бэкенд. Все также прошло легко, поскольку ранее DevOps-инженер контейнеризировал наше приложение. На перенос GitLab, кластера Docker Swarm и тестовых стендов ушло около полутора месяцев — все делали без спешки и аврала, чтобы успевать перепроверять результат.
  • Базы данных. Этот этап был самым сложным, поскольку параллельно мы меняли архитектуру приложения. Старое решение работало на базах данных MySQL — схема изжила свое и дальше эксплуатировать ее не было смысла.
    • В качестве нового хранилища выбрали ClickHouse. К кластеру ClickHouse подключили старую базу MySQL: с этого момента начали перенос данных из одной базы в другую, попутно новые данные уже писались в ClickHouse.
    • Следующий этап — перенос базы данных MySQL, которая отвечает за бизнес-логику. В облаке подняли инстанс MySQL Percona и ввели его в кластер — после успешной репликации данных старый сервер вывели из работы.
  • АТС. В последнюю очередь переносили телефонию: загрузили в облако кастомный образ АТС, а затем — запустили его на платформе.

Итог: рост надежности и сокращение убытков

Надежность сервиса повысилась в 3 раза. Уровень надежности напрямую зависит от того, какие решения использовали до переезда в облако. У нас были старые Legacy-решения, и как минимум раз в месяц мы серьезно падали — клиенты не могли отслеживать свой транспорт.

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

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

Инфраструктуру обслуживает один DevOps-инженер на part-time. Облако снимает с компании головную боль, связанную с обслуживанием. Больше не нужно следить за железом и исправностью дисков, думать ночью, как поднять упавший сервер.

Теперь DevOps-инженер, который ранее работал full-time, тратит на нас всего несколько часов в неделю и может заниматься другими проектами. Старая инфраструктура требовала содержать штатного сотрудника полный день.

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

Планы на будущее

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

Через несколько месяцев мы запустим видеорегистраторы в продакшен. Данные от них тоже будут храниться в облаке Mail.ru Cloud Solutions. Для этого нам могут понадобиться новые продукты платформы.

Попробуйте наши сервисы

После активации аккаунта мы свяжемся с вами и начислим 3 000 рублей на ваш счет MCS, чтобы вы смогли протестировать сервис в течение 60 дней.
21 год
опыта поддержки высоконагруженных сервисов
100+ млн
пользователей по всему миру
7 лет
экспертизы развития облачной инфраструктуры