Агент

Драйвер устройства AggreGate Agent является драйвером устройства, позволяющим AggreGate Server взаимодействовать с Agent. Технически Agent представляет собой BASIC приложение, которое создает и поддерживает дерево контекстов при помощи узла для каждого подключенного к нему физического устройства (элемента оборудования). В действительности устройство также может быть реализовано с помощью пользовательского кода, являющегося частью Agent. Переменные контекста каждого устройства относятся к настройкам устройства. Каждый такой контекст обладает функциями, позволяющими выполнять некоторые операции с устройством, и событиями, использующимися для управления состоянием устройства и изменениями в режиме работы. AggreGate Server использует протокол передачи данных AggreGate для взаимодействия с Agent.

Этот драйвер отличается от драйвера устройства Локальный Агент. Последний устанавливает  исходящее соединение в "режиме агента" вместо обслуживания входящих соединений агента.

Информация о драйвере

ID плагина драйвера:

com.tibbo.linkserver.plugin.device.agent

Общие настройки

  • Количество портов для Agent. Входящие подключения от агентов будут приниматься на данный порт.

  • Количество портов для безопасных соединений Agent. Входящие безопасные соединения от Агентов будут приниматься на этот порт.  

  • Таймаут команды. Время ожидания команд, посланных при помощи протокола передачи данных Агентов.

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

  • Автоматическая регистрация аккаунтов устройств для новых Агентов. Позволяет Агентам передавать AggreGate Server пароли, что приводит к автоматической регистрации сервером учетных записей в случае попыток подключения новых Агентов.

  • Максимальная длина очереди событий. Максимальное количество единичных событий Агента, которые должны быть сохранены, если обрабатываемое событие отложено ввиду некоторых причин. Если очередь событий переполняется, удаленный агент не сможет посылать события.

Настройки уровня пользователя

Не определены.

Свойства аккаунта устройства

Свойства соединения

  • Authentication. Устанавливает LDAP-аутентификацию в качестве сторонней службы для аутентификации агента или аутентификацию путем присвоения агенту пароля.

  • Логин. Имя пользователя LDAP для агента, если активирована аутентификация LDAP.

  • Пароль. Пароль агента, если сторонняя аутентификация не выбрана.

  • Тайм-аут команды. Тайм-аут для команд, отправляемых по протоколу AggreGate.

Активы устройства

Наличие активов определяется конкретной реализацией Agent.

Настройки устройства

Драйвер устройства < Agent> предоставляет удаленные переменные Agent, такие как локальные настройки устройства.

Операции устройства

Драйвер устройства Agent предоставляет удаленные функции Agent, такие как локальные операции устройства.

События устройства

Драйвер устройства Agent предоставляет удаленные события Agent, такие как локальные события устройства.

Подключение

Данный драйвер приводит устройство в режим Онлайн, если:

  • Агент подключен к серверу и произвел вход в систему

  • Основные операции агента выполнены успешно.

Статистика соединений агента

Диалог статуса устройства для драйвера устройства Agent показывает дополнительную таблицу Статистики соединения, которая показывает:

  • Период соединения

  • Количество команд, то есть количество команд, отправленных Агенту

  • Среднее время ответа на все команды

  • Входящий трафик (несжатый)

  • Исходящий трафик (несжатый)

  • Количество не отвеченных команд

Метрика производительности

Свойство

Описание

Длина очереди события

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

Отклоненные события

Показывает, сколько событий было отклонено из-за переполненной Очереди событий.

Отключения

Показывает количество отключений.

Событий получено

Показывает общее количество полученных событий.

Обновлений получено

Показывает количество полученных событий обновления.

Аутентификация Агента

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

Локальная аутентификация

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

  • Аутентификация: Выпадающий список, в котором указаны варианты внешней аутентификации. Для локальной аутентификации установите значение Локальная аутентификация.

  • Пароль: назначение пароля для авторизации агента с помощью AggreGate Server.

Внешняя аутентификация

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

  • Аутентификация: Должен быть выбран метод внешней аутентификации LDAP, скрывающий свойство Пароль и открывающий свойство Логин.

  • Логин: Логин LDAP, который должен быть связан с агентом.

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

Детали синхронизации

Драйвер Агента выполняет синхронизацию AggreGate Server и Device, проводимую Агентом по следующей схеме:

  • Считывает с Agent список доступных контекстов и их отношения "родитель-потомок".

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

  • Проводит синхронизацию внутренних часов реального времени Agent со временем на сервере. Время устанавливается согласно временной зоне, назначенной для Device.

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

  • Находит общие таблицы, которые могут быть использованы в качестве "заданных значений" переменных Agent (таких как настройки Device).

  • Создает кэш свойств (если Device подключается впервые) или обновляет его согласно определениям переменных, считанных ранее. Переменные, относящиеся к группе по умолчанию, синхронизируются с сервером и могут быть изменены пользователями. Кэш свойств создается только в серверных контекстах, относящихся к контекстам Device в Agent. Переменные внутренних настроек Agent модифицируются сервером напрямую, без создания кэша.

  • Устанавливает опцию Конфигурировать Device  в каждом контексте, относящемся к контексту Device в Agent.

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

  • Устанавливает действие События Мониторинга в каждом контексте, относящемся к контексту Device в Agent, чтобы показать все события, поступающие от Agent и принадлежащие к группе по умолчанию.

  • Синхронизирует значения переменных между кэшем сервера и Agent для каждого контекста, соответствующего контексту Device в Agent.

Точная структура коммуникаций между Agent и AggreGate Server во время синхронизации описана в Коммуникация между Agent и AggreGate Server.

Дополнительные действия контекста device агента

Контекст устройств, предоставляемый Агентом, может выполнять различные дполнительные действия. Большинство из них определяется пользовательским BASIC приложением Агента. Например, если Агент работает с некоторыми датчиками терминалов, подключенных к последовательным портам, возможно выполнение действия Обнаружения устройств, которое заставляет заново сканировать последовательные порты, находить подключенные устройства и обновлять список контекстов Device.

Существуют два дополнительных действия контекста Device, предоставляемых Агентом:

Конфигурация агента

Данное действие конфигурации используется для конфигурации самого Агента, т.е. для установки параметров, определяющих, как Агент взаимодействует с подключенными к нему аппаратными устройствами, как он преобразовывает протокол данных устройств в Протокол передачи данных AggreGate, и какие переменные, функции и события предоставляются агентом в контексты <%dt%, относящиеся к данным устройствам.

Перезагрузка агента

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

Обнаружение агента

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

Сегмент локальной сети означает, что между ПК и всеми остальными устройствами данного сегмента установлены только сетевые концентраторы (нет роутеров, мостов, брандмауэров и т.п.)

Аппаратные Агенты, расположенные "позади" роутера (т.е. в случае, когда для обнаружения Агента пакеты, отправленные из AggreGate Server, должны пройти через роутер) не могут быть обнаружены автоматически AggreGate Server, потому что широковещательные дэйтаграммы протокола UDР, используемые для их обнаружения в сети, не трансилруются роутером. Однако иногда все-таки возможно подключить такие Агенты к AggreGate Server, если они будут доступны через их IP адреса (иными словами, если имеется сетевой маршрут).

Каждый обнаруженный Агент идентифицируется МАС-адресом. Обнаружение определит все местные Агенты, даже если некоторые из них имеют одинаковый IP адрес или же неправильный или недоступный IP адрес. Для доступа AggreGate Server к Агентам в режиме обнаружения не требуется наличие корректного IP адреса.

Во время процесса обнаружения AggreGate Server создает новый контекст Обнаруженного Агента для каждого определяемого Агента. Все контексты обнаруженных Агентов, созданные во время предыдущего обнаружения, удаляются и создаются новые. Невозможно создать Учетную запись обнаруженного Агента вручную, это осуществляется только в процессе обнаружения.

Если автоматическое обнаружение Агентов не включено и не было запущено вручную, контекст обнаружения не будет содержать учетные записи Агентов.

Обнаружение может быть начато при выполнении одного их двух действий Обнаружения:

  • Обнаружение Агентов

  • Обнаружение Агентов и Автоподключение

Подключение внешних агентов к AggreGate Server

Подключение внешних Агентов к AggreGate Server представляет собой процесс реконфигурации аппаратного Агента для немедленного его подключения к AggreGate Server после запуска. Существует несколько способов:

  • Подключение ранее обнаруженного Агента, используя его учетную запись.

  • Автоматическое подключение всех обнаруженных Агентов к AggreGate Server без взаимодействия с пользователем.

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

  • Подключение вручную Агента, который не был определен в процессе обнаружения, но может быть доступен через AggreGate Server.

Подключение ранее обнаруженного агента к

AggreGate Server

Данная процедура запускается действием Подключить Агент к AggreGate Server контекста Агента.

Пользователь должен определить параметры до начала процесса подключения:

  • Пароль. Необходим, если в настройках Агента оборудования установлен пароль. Данный пароль будет использован AggreGate Server для доступа к настройкам Агента аппаратных средств.

  • Имя пользователя. Имя пользователя AggreGate Server, владеющего учетной записью Агента, которое будет использоваться для аутентификации Агента оборудования при входе в AggreGate Server.

  • Имя устройства. Имя вышеуказанной Учетной записи Device. Настройка Имя устройства Агента оборудования будет выставлена согласно данному значению.

  • Принудительное подключение, даже если выполнена конфигурация Агента для  AggreGate Server или имеется несовместимое программное обеспечение. По умолчанию подключение не удается и появляется сообщение об ошибке в том случае, если Агент уже настроен для подключения к AggreGate Server или версия программного обеспечения устарела (т.е. не поддерживает автоматическую конфигурацию для AggreGate Server). Данная опция отключает проверку значений настроек Агента и его номера версии. Принудительное подключение пройдет успешно, но может быть, что Агент не сможет в действительности подключиться к AggreGate Server или осуществить вход. Если Агент не вошел в AggreGate Server по истечению нескольких секунд после завершения принудительного подключения, вручную измените параметры настроек Агента (в зависимости от вида устройства это можно сделать при помощи клавиатуры/жидкокристаллического дисплея или веб интерфейса).

Автоматическое подключение обнаруженного агента к AggreGate Server

Если обнаружение было запущено, используя действие Обнаружение агента и Автоподключение, AggreGate Server автоматически выполняет процедуру подключения обнаруженного Агента к AggreGate Server для каждого Агента, определенного во время процесса обнаружения. Это может быть полезным для быстрого подключения нескольких Агентов, встроенных в сегмент локальной сети.

Автоподключение не выполняется, если:

  • Агент запрашивает пароль для доступа к настройкам, либо

  • Агент уже настроен на подключение к AggreGate Server при запуске, либо

  • Программное обеспечение Агента не поддерживает автоподключение.