Архитектура и логика взаимодействия компонентов Принтум
Принтум состоит из набора модулей, которые вместе обеспечивают мониторинг печатающих устройств и управление заданиями. Понимание архитектуры необходимо для правильного внедрения, диагностики и проектирования отказоустойчивых конфигураций. Этот обзор описывает роли основных компонентов и то, как они взаимодействуют между собой.
Два функциональных домена
Условно возможности Принтум делятся на две крупные части:
Мониторинг – сбор телеметрии. Мониторинг отвечает за опрос устройств, сбор данных через протокол SNMP (версии 1/2/3), хранение статистики и построение отчётов. Он не вмешивается в процесс печати; его задача – наблюдать и хранить данные. Управление печатью (ПринтМенеджер) – обработка заданий. Сервер управления печатью контролирует процессы печати, маршрутизирует задания по правилам, выполняет авторизацию пользователей и применяет политики (очереди, правила экономии тонера, квоты и т. п.).
Хотя эти модули представлены как равноправные, на практике управление печатью опирается на Мониторинг. Мониторинг – это фундамент, без которого невозможна работа ПринтМенеджера. Сервер управления печатью подключается к Мониторингу, наследуя информацию об устройствах, пользователях и инфраструктуре.
Компоненты системы
Мониторинг
Сервер Мониторинга – ядро системы. Он хранит базу данных, каталог устройств и пользователей, принимает данные от агентов и предоставляет API другим компонентам. Установка любой конфигурации Принтум начинается с развёртывания Мониторинга. Сетевой агент – служба, которая сканирует IP-сети, обнаруживает принтерыМФУ и МФУ по SNMP и периодически опрашивает их. В типичных установках хватает одного Сетевого агента; его можно запускать на том же сервере, что и Мониторинг. При больших парках принтеровМФУ допускается несколько агентов. Локальный агент – программа, устанавливаемая на рабочих станциях. Она мониторит локальные очереди печати, что позволяет собирать статистику для USB-принтеровМФУ и фиксировать, кто и что отправил на печать. Тот же модуль может работать как мониторинг USB-принтеров:МФУ: в этом случае агент фильтрует события только от локально подключённых устройств. ПринтМенеджер ПринтМенеджер
Сервер управления печатью подключается к Мониторингу и использует его данные. ПринтМенеджер отвечает за:
авторизацию пользователей на
принтерахМФУ (карта, PIN); виртуальные очереди печати и маршрутизацию заданий; применение правил (цвет/чёрно-белое, ограничение страниц, квоты, печать только после авторизации); хранение теневых копий печатных заданий (при включении соответствующих опций); интеграцию с почтовым сервером (отправка сканов) и внешними системами.
ПринтМенеджер может работать в двух режимах:
С Клиентом ПМ – на рабочие станции устанавливается виртуальный драйвер Принтум и службы управления. Клиент ПМ формирует PDF и отправляет его на сервер. После авторизации задание отправляется на принтер.МФУ. Клиент ПМ обеспечивает функции экономии тонера и автоматическое управление локальными очередями. Без Клиента ПМ – на станциях пользователей нет ПО Принтум; они печатают на виртуальный принтер,МФУ, настроенный администратором (обычно Generic PS или драйвер производителя). Задания поступают на сервер напрямую. Такой режим упрощает внедрение там, где установить Клиент ПМ невозможно, но лишает возможностей экономии тонера и автоматического разворачивания прямых очередей.
Интеграция с доменом
Принтум интегрируется с Active Directory/LDAP. Мониторинг считывает пользователей и группы из домена. Настройка фильтров позволяет импортировать только нужные группы. Принтеры,МФУ, добавленные в Мониторинг, автоматически появляются в ПринтМенеджере – администратору не нужно заводить устройства вручную.
Потоки данных
Обнаружение устройств : Сетевой агент сканирует сеть, находит принтерыМФУ по SNMP и отправляет данные в Мониторинг. Локальный агент мониторит USB-устройства и очереди. Сбор статистики : Мониторинг хранит данные об ошибках, счётчиках, уровнях расходных материалов и состояниях устройств. При необходимости можно добавить Локальные агенты для сбора статистики в разрезе пользователей. Управление печатью : пользователи отправляют задания в виртуальный принтерМФУ Принтум (через Клиент ПМ или без него). ПринтМенеджер получает задание, применяет правила и отправляет его на физический принтерМФУ после авторизации. В рамках распределённой архитектуры может быть несколько серверов ПринтМенеджера, все они подключаются к одному Мониторингу.
Распределённая архитектура
Принтум поддерживает сценарии с несколькими ПринтМенеджерами. Каждый из них независим, нет иерархии «главный–подчинённый». Серверы ПринтМенеджера размещаются в филиалах, чтобы обеспечить печать даже при потере связи с центральным Мониторингом. В этом случае:
локальный ПринтМенеджер обслуживает пользователей своего филиала; при обрыве связи статистика и новые пользователи не синхронизируются, но печать, копирование и сканирование продолжают работать; после восстановления канала данные синхронизируются.
Для высокой доступности в централизованном ЦОД рекомендуется использовать кластер из минимум трёх ПринтМенеджеров с балансировщиком нагрузки и отдельным отказоустойчивым хранилищем базы данных и файлов (см. отдельную статью «Отказоустойчивость и деградация»).
Вывод
Мониторинг – основа системы Принтум. Все остальные функции строятся на его базе. Сетевой агент и Локальный агент наполняют Мониторинг данными, ПринтМенеджер использует эту информацию для контроля печати, авторизации и применения политик. Правильно спроектированная архитектура учитывает связи между компонентами и обеспечивает отказоустойчивость и масштабирование.