+7 (499) 136-00-54
ENG

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

На этапе обследования необходимо было:

— проанализировать существующий обмен между 1С:ERP и 1С:WMS;
— определить состав и объем передаваемых данных;
— оценить требования к производительности;
— проработать варианты целевой архитектуры и выбрать технологический стек.

Задачи
  • определить целевую архитектуру интеграционного взаимодействия;
  • подготовить тестовую и промышленную инфраструктуру Apache Kafka;
  • установить и настроить Kafka;
  • организовать средства администрирования и мониторинга;
  • обеспечить контроль состояния платформы и обработки сообщений;
  • проверить работоспособность и производительность инфраструктуры;
  • подготовить документацию для администраторов, пользователей и разработчиков.
Краткое описание проекта

Для крупного агрохолдинга (NDA) команда ФТО создала инфраструктурную основу корпоративной шины данных на базе Apache Kafka.

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

Проекту предшествовало обследование существующего ИТ-ландшафта: наша команда проанализировала действующие механизмы обмена, состав и объем передаваемых данных, требования к производительности и возможные варианты реализации будущей шины.

В качестве первого пилотного сценария была выбрана интеграция 1С:ERP и 1С:WMS «Логистика. Управление складом» в рамках бизнес-процесса «Логистика», а в рамках проекта были развернуты и настроены тестовая и промышленная среды Apache Kafka, реализованы средства администрирования и мониторинга, проведены функциональные и нагрузочные испытания, подготовлена эксплуатационная документация.

В результате заказчик получил готовую инфраструктуру для развития корпоративных интеграций. Пилотный контур стал основой для дальнейшего подключения порядка 10 информационных систем и конфигураций к единой шине.

Ситуация до старта проекта

ИТ-ландшафт заказчика включает множество корпоративных информационных систем и конфигураций, между которыми необходимо организовывать обмен данными. В целевой контур интеграции входят порядка 10 систем: решения на базе 1С для управления ресурсами предприятия, складом, персоналом, документооборотом, розничными процессами, техническим обслуживанием и нормативно-справочной информацией, а также специализированные системы.

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

В качестве первого этапа был выбран бизнес-процесс «Логистика» и существующий обмен между 1С ERP и 1С WMS «Логистика. Управление складом». На момент обследования взаимодействие между этими системами было реализовано с использованием распределенных информационных баз (РИБ). Применяемый механизм имел ряд особенностей: он являлся нестандартным и неквитированным, а конфигурации участвующих в обмене информационных баз могли различаться.

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

Архитектура решения и масштаб проекта

В целевой архитектуре Apache Kafka выполняет роль промежуточного интеграционного слоя между информационными системами.

Для обмена используются два типа прикладных компонентов:

  1. Producer получает сформированные в 1С данные и передает сообщения в соответствующие топики Kafka.
  2. Consumer получает сообщения из Kafka, преобразует их в необходимый формат и передает в систему-получатель.

 

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

Инфраструктура Kafka

В рамках проекта были подготовлены отдельные тестовая и промышленная среды.

Для администрирования Kafka используется веб-интерфейс AKHQ, позволяющий работать с топиками, контролировать группы потребителей сообщений и отслеживать отставание в их обработке. В технической конфигурации также предусмотрены средства сбора и визуализации метрик Kafka. Администраторская документация содержит конфигурацию Kafka Exporter, Prometheus и Grafana. Промышленная среда реализована в виде Kafka-кластера из трех брокеров.

Пилотный интеграционный сценарий

Пилот охватывает бизнес-процесс «Логистика». В ходе обследования были определены и описаны основные потоки между 1С:ERP и 1С:WMS.

В обмен входят нормативно-справочные данные — в том числе информация об организациях, номенклатуре, контрагентах и складах, — а также операционные документы: заказы, документы приемки, отгрузки, производства и другие объекты интеграции.

При этом проект был ограничен созданием инфраструктурной основы. После подготовки и проверки Kafka-платформы разработка и настройка прикладных Producer/Consumer-коннекторов были переданы команде заказчика.

Особенности и уникальность проекта

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

Поэтому еще на этапе обследования и проектирования учитывался не только пилотный обмен между 1С:ERP и 1С:WMS, но и будущий состав интеграционного ландшафта.

Целевая архитектура предусматривает подключение порядка 10 информационных систем и конфигураций. Помимо ERP и WMS, в нее входят:

  • 1С:ЗУП КОРП;
  • 1С:Документооборот;
  • 1С:Розница;
  • 1С:Учет питания;
  • 1С:ТОИР;
  • 1С:MDM;
  • специализированные решения Priva.

Поэтому Kafka изначально создавалась как масштабируемая корпоративная платформа, а не как инфраструктура исключительно для обмена ERP ↔ WMS.

Другой важный аспект — разделение зон ответственности. Команда ФТО подготовила и проверила Kafka-инфраструктуру, настроила средства администрирования и мониторинга, провела тестирование и подготовила необходимую документацию. Прикладной интеграционный слой и дальнейшая разработка коннекторов остаются в зоне ответственности команды заказчика.

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

Результаты проекта

По итогам проекта заказчик получил готовую инфраструктурную платформу для развития корпоративной шины данных на базе Apache Kafka.

В рамках проекта:

  • развернуты и настроены тестовая и промышленная среды;
  • реализован промышленный Kafka-кластер из трех брокеров;
  • подготовлены средства администрирования и мониторинга — AKHQ, Kafka Exporter, Prometheus и Grafana;
  • проведены функциональные и нагрузочные испытания;
  • подготовлена документация для дальнейшей эксплуатации и развития платформы.

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

В ходе нагрузочных испытаний успешно выполнен тест передачи 100 000 сообщений с интенсивностью 10 000 сообщений в секунду.

Отдельно проверялась задержка передачи. В тесте на 10 000 сообщений при интенсивности 1 000 сообщений в секунду средняя задержка составила менее 10 мс. Проверка успешно пройдена как в TEST-, так и в PROD-среде.

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

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

Добрый день!
Здесь Даниил, менеджер по работе с клиентами.