Принципы работы |
![]() ![]() ![]() |
Основные функции 1.Запускает или останавливает компоненты программного комплекса в зависимости от настроек. Производит автоматический перезапуск компонентов, прекративших свою работу в результате сбоя. Осуществляет запуск одних компонентов по запросу от других компонентов. Информирует запущенные компоненты программного комплекса об изменении состава запущенных компонентов. 2.Обеспечивает централизованный доступ всех компонентов к настройкам конфигурации. Предоставляет интерфейс для централизованного изменения параметров конфигурации уполномоченными компонентами. Выполняет оповещение всех заинтересованных компонентов об изменении настроек. 3.Предоставляет компонентам информацию из используемого лицензионного ключевого файла. Принимает от уполномоченных компонентов новые лицензионные данные. Оповещает запущенные компоненты программного комплекса при изменении лицензионных данных и параметров конфигурации. Демон управления конфигурацией Dr.Web ConfigD всегда запускается с правами суперпользователя root. Он запускает остальные компоненты программного комплекса Dr.Web для Интернет-шлюзов UNIX и связывается с ними через предварительно открытый сокет. Демон управления конфигурацией принимает подключения от прочих компонентов программного комплекса через информационный сокет (публично доступный) и управляющий сокет (доступный только компонентам, запущенным с правами суперпользователя). Выполняет загрузку параметров конфигурации и лицензионных данных из файлов или обеспечивает их получение от используемого сервера централизованной защиты через агент централизованной защиты Dr.Web ES Agent, а также подстановку корректных значений по умолчанию для параметров конфигурации. Поэтому к моменту старта любого компонента или отсылки ему сигнала SIGHUP, демон управления конфигурацией всегда имеет целостный и непротиворечивый набор настроек всего комплекса Dr.Web для Интернет-шлюзов UNIX. При получении сигнала SIGHUP демон управления конфигурацией перечитывает параметры конфигурации и данные из лицензионного ключевого файла, рассылая компонентам, при необходимости, уведомления о необходимости перечитывании их параметров конфигурации. При получении сигнала SIGTERM демон управления конфигурацией сначала завершает все компоненты, а только потом завершается сам. Демон управления конфигурацией обеспечивает удаление всех временных файлов компонентов после их завершения. Принципы взаимодействия с другими компонентами 1.Все компоненты используют только те параметры конфигурации и лицензионную информацию, которые они получили при запуске от демона управления конфигурацией Dr.Web ConfigD. 2.Демон обеспечивает схему сбора сообщений ото всех запущенных под его управлением компонентов в единый журнал. Все сообщения, которые любой из компонентов аварийно выводит в поток ошибок stderr, собираются демоном управления конфигурацией и помещаются в общий журнал программного комплекса с отметкой о том, какой компонент осуществил этот вывод. 3.При завершении работы управляемые компоненты должны вернуть код завершения. Если код завершения отличен от 101, 102 и 103, то демон управления конфигурацией перезапустит компонент. Таким образом, аварийное завершение компонента вызовет его перезапуск и сообщение из stderr в журнале программного комплекса. •При завершении любого компонента с кодом возврата 101, он будет запущен вновь только при изменении параметров лицензии. Так что если компонент не может работать в условиях предоставленной лицензии, он фиксирует это в поток stderr и завершает работу с кодом 101. •При завершении работы с кодом 102, компонент будет запущен снова только при изменении параметров конфигурации. Если полученные компонентом параметры конфигурации не позволяют ему работать, то компонент выводит сообщение об этом в поток stderr и завершает работу с кодом 102. Новая попытка запуска компонента демоном управления конфигурацией состоится тогда, когда поменяются какие-либо параметры конфигурации. •Компоненты, запускаемые демоном управления конфигурацией по требованию, при отсутствии обращений к ним (т.е. при простое) могут завершаться с кодом 103. Это такие компоненты, как Dr.Web Scanning Engine и Dr.Web File Checker. •Если новые значения параметров конфигурации, полученные компонентом от демона управления конфигурацией, не могут быть применены им «на лету», т.е. если для этого требуется перезапуск, то компонент завершает работу с кодом 0, чтобы Dr.Web ConfigD перезапустил его. •При невозможности подключения к демону управления конфигурацией или ошибке протокола взаимодействия, компонент фиксирует сообщение об этом в stderr и завершает работу к кодом 1. 4.Обмен сигналами: •Демон управления конфигурацией шлет компоненту сигнал SIGHUP для того, чтобы он применил измененные параметры конфигурации. •Демон управления конфигурацией шлет компоненту сигнал SIGTERM для завершения работы компонента. Компонент обязан завершиться в течение 30 секунд. •Сигнал SIGKILL используется демоном управления конфигурацией для принудительного завершения работы компонентов, не завершивших свою работу в течение 30 секунд после получения от него сигнала SIGTERM. |