Добрый день.
Есть такая неприятная особенность: drweb-updater обновляет базу и отправляет демона drwebd в перезагрузку, за время которой (30-60 секунд в зависимости от размера баз и текущей нагрузки) maild_postfix не может подключиться к демону. В результате почта, поступившая в это время, согласно правилу падает в карантин, неприятно.
Скрипты обновления/запуска штатные, никакого шаманства.
Как с таким бороться?
У меня идеи такие:
1) увеличить время таймаута при обращении maild_postfix к drwebd. Однако в maild_postfix.conf:
MaxTimeoutForThreadActivity = 2m IpcTimeout = 2m
- странно, этого же должно хватать?
2) увеличить таймаут глобально, через TCP SYN Retries - это чревато другими проблемами с IP-стеком;
3) поставить второй независимый drwebd сервер компонент, и перезапускать его в интервалы, отличные от первого. Но это нетривиально по настройке. Либо на другой комп, либо надо обучить 2й крмпонент не реагировать на SIGHUP... к тому же такой способ вероятно нарушит лицензионное соглашение.
4) приостанавливать maild_postfix либо сам postfix? Ну, не знаю, не знаю.
... похоже, идеи кончились.
У кого какие есть соображения?
P.S. и логи:
Drweb_updater:
Mon Oct 2 13:00:02 2017 {W} updater [56723] Dr.Web Updater ($Id: 30cd8d350a4dd344558f718284c052a1630f9981 $) started ... ... Mon Oct 2 13:00:06 2017 {W} updater [56723] Trying to send signal HUP Dr.Web daemon... Mon Oct 2 13:00:06 2017 {W} updater [56723] signal HUP has been sent to Dr.Web daemon... ... Mon Oct 2 13:00:06 2017 {I} updater [56723] Finish Success: 2017-10-02 13:00:06
Drweb_daemon:
Mon Oct 2 13:00:06 2017 SIGHUP received, reloading... Mon Oct 2 13:00:06 2017 Dr.Web (R) daemon for Linux v6.0.2.4 ... Mon Oct 2 13:00:06 2017 Shell version: 6.0.2.02020 <API:2.2> Mon Oct 2 13:00:06 2017 Engine version: 7.0.28.2020 <API:2.2> Mon Oct 2 13:00:08 2017 Loading /var/drweb/bases/drwtoday.vdb - Ok, virus records: 497 ... Mon Oct 2 13:00:48 2017 Loading /var/drweb/bases/dwp11000.vdb - Ok, virus records: 1 Mon Oct 2 13:00:48 2017 Total virus records: 6394294 Mon Oct 2 13:00:48 2017 Daemon is installed, active interfaces: /var/drweb/run/.daemon 127.0.0.1:3000
maild_postfix:
Mon Oct 2 13:00:47 2017 [139892623394560] receiver INFO Start new session with 127.0.0.1:45684 Mon Oct 2 13:00:48 2017 [139892602414848] receiver INFO New mail [from: <...>; to:<...>], size:16163. Send to drweb-maild... Mon Oct 2 13:00:48 2017 [140130513819392] maild INFO 000C9B93/F25D6174011A Attach msg to plugin drweb... Mon Oct 2 13:00:49 2017 [140130513819392] drweb.maild.ipc ERROR 000C9B93/F25D6174011A error for address(es) [local:/var/drweb/run/.daemon, inet:3000@127.0.0.1]: DwSocket::Receive: [104] Connection reset by peer Mon Oct 2 13:00:49 2017 [140130513819392] drweb WARN 000C9B93/F25D6174011A Failed to send request to pid:/var/drweb/run/drwebd.pid server Mon Oct 2 13:00:49 2017 [140130513819392] drweb ERROR 000C9B93/F25D6174011A processing msg error :[Can`t transfer request to any drwebd server]-> use ProcessingErrors Mon Oct 2 13:00:49 2017 [140130513819392] maild INFO 000C9B93/F25D6174011A quarantine: success save msg to /var/drweb/infected/def/drweb/3/000C9B93.0.maild.qXDbUD Mon Oct 2 13:00:49 2017 [140130513819392] maild INFO 000C9B93/F25D6174011A send notification error for msg /var/drweb/msgs/in/3/000C9B93 ...