Как синхронизировать заявки между двумя инсталляциями GLPI

Головной офис и филиал, клиент и провайдер, тестовая среда и продуктив: когда заявка должна существовать в двух GLPI, ручное копирование обходится дорого. Модуль GLPI Sync реплицирует заявки, комментарии, задачи и решения через встроенный REST API.

В этой статьеРазделов: 6

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

Проблема

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

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

Как работает GLPI Sync

Модуль зеркалирует заявки из одной инсталляции в другую с помощью встроенного REST API GLPI — без промежуточного ПО, без общей базы данных и без сторонних интеграций.

  • Три направления для каждой инсталляции — отправка (заявка, созданная здесь, в фоновом режиме создаётся на удалённой стороне), импорт (каждую минуту модуль ищет новые заявки на удалённой стороне и создаёт здесь зеркальную заявку) или двунаправленный режим.
  • Комментарии, задачи, решения и статусы — каждый тип включается независимо: можно синхронизировать только то, что нужно.
  • Несколько удалённых инсталляций — один источник может одновременно питать несколько получателей.
  • Фильтры отправки и импорта — при отправке по категории, организации, инициатору и группе; при импорте по категории, организации и группе специалистов удалённой заявки, с необязательной датой отсечения.
  • Сопоставление полей — организация, категория и другие данные источника переводятся в соответствующие ID получателя, которые редко совпадают.
  • Очередь с повторными попытками — если удалённая инсталляция недоступна, синхронизация обрабатывается позже, а не теряется. Вкладки «Корреляции» и «Логи» показывают каждую связанную заявку и каждый запуск, а с модулем Smart Notify колокольчик сообщает, когда удалённый GLPI падает.

Как включить

  1. Установите NexTool в ваш GLPI 11 с автоматическими задачами GLPI, запускаемыми через cron из командной строки.
  2. Откройте NexTool > Модули и включите GLPI Sync.
  3. Зарегистрируйте удалённую инсталляцию с URL и User-Token REST API (или логином и паролем) и, если удалённый GLPI этого требует, App-Token; выберите направление и воспользуйтесь кнопкой Проверить подключение и права.
  4. Задайте фильтры отправки и импорта, значения по умолчанию для каждой стороны и сопоставление полей между инсталляциями.
  5. Выберите, что синхронизировать: комментарии, задачи, решения и статусы.

Кому подходит

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

Важная архитектурная деталь: каждая инсталляция может работать в режиме Outbound (локальная → удалённая), Inbound (удалённая → локальная) или Bidirectional (в обе стороны). Направление задаётся для каждой интеграции, а модуль использует корреляции и блокировки направления, чтобы избежать дублирования и записи в неразрешённом направлении. В двунаправленных сценариях всё равно важно определить, какие поля и команды отвечают за каждую сторону.

Совместимость

  • GLPI: 11.0+
  • План: лицензируемый
  • Плагин: NexTool 6.16.0 или выше

Следующий шаг

GLPI Sync входит в NexTool — экосистему модулей, расширяющую GLPI без доработки кода. Посетите страницу модуля или запишитесь на встречу, чтобы увидеть его в работе в вашей среде.


Проверено командой NexTool Solutions.

Часто задаваемые вопросы

Нет. Каждую инсталляцию можно настроить как Outbound, Inbound или Bidirectional. В режиме Inbound локальная среда только получает данные от этой инсталляции; в режиме Bidirectional включены оба направления с корреляциями, которые определяют эквивалентные записи.

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

Сопоставления переводят ID между инсталляциями, а локальные или удалённые значения по умолчанию покрывают то, для чего нет конкретного соответствия. Сопоставление имеет приоритет; локальные ID участников не отправляются в другой GLPI в исходном виде.

Исходящее создание ставится в очередь и обрабатывается в фоновом режиме. Временные сбои попадают в очередь повторных попыток с возрастающими интервалами; окончательные отказы не повторяются впустую. Отправка и импорт зависят от CLI-cron GLPI; импорт опрашивает удалённую сторону каждую минуту.

Да. Фильтры отправки учитывают категорию, организацию, инициатора и группу; фильтры импорта — категорию, организацию и группу специалистов удалённой заявки, с необязательной датой отсечения. Если заполнено несколько полей, достаточно совпадения с одним из них. Таблица корреляций хранит пару локальная/удалённая и не позволяет повторно создать ту же заявку или вложенный элемент.

Нужна помощь?