Добрый день!
В последнее время стала возникать ситуация с перезагрузкой mosuitto по ошибке out of memory. Каких-то явных причин и связей не нашел, конфигурация WB стандартная (дополнительное ПО не установлено, кроме стандартного WB и Z2M), ошибка возникает примерно раз-два раза в сутки.
Отключил вечером, но все равно две перезагрузки - 18:48 и 2:25 ночи. Узнаю о перезагрузке брокера т.к. умный дом громко сообщает об “Отключении электроэнергии” и “Восстановлении электроэнергии”, когда снова начинают приходить значения в WB-MAP.
Свежий диагностический лог приложил.
приложен диагностический архив, доступен только сотрудникам поддержки
А что вот это за клиенты, подключающиеся к брокеру?
Dec 14 18:48:30 wirenboard-ACHMBKEO mosquitto[10264]: 1702568909: New connection from 192.168.214.6:54080 on port 1883.
Dec 14 18:48:30 wirenboard-ACHMBKEO mosquitto[10264]: 1702568909: New client connected from 192.168.214.6:54080 as Telegraf_Plex (p2, c0, k60).
Dec 14 18:48:36 wirenboard-ACHMBKEO mosquitto[10264]: 1702568916: New connection from 192.168.214.78:55585 on port 1883.
Dec 14 18:48:36 wirenboard-ACHMBKEO mosquitto[10264]: 1702568916: New client connected from 192.168.214.78:55585 as 854fd4ec (p2, c1, k15).
Dec 14 18:48:38 wirenboard-ACHMBKEO mosquitto[10264]: 1702568917: New connection from 192.168.214.70:59700 on port 1883.
Dec 14 18:48:38 wirenboard-ACHMBKEO mosquitto[10264]: 1702568917: New client connected from 192.168.214.70:59700 as DVES_96D04F (p2, c1, k30).
Dec 14 18:48:41 wirenboard-ACHMBKEO mosquitto[10264]: 1702568921: New connection from 192.168.214.65:58262 on port 1883.
Dec 14 18:48:41 wirenboard-ACHMBKEO mosquitto[10264]: 1702568921: New client connected from 192.168.214.65:58262 as r4s0 (p2, c1, k60).
Dec 14 18:48:46 wirenboard-ACHMBKEO mosquitto[10264]: 1702568926: New connection from 192.168.214.66:65245 on port 1883.
Dec 14 18:48:46 wirenboard-ACHMBKEO mosquitto[10264]: 1702568926: New client connected from 192.168.214.66:65245 as 770530 (p2, c1, k15).
Как раз после массового подклчения и перезапускается.
Попробовал сэмулировать, отправил в брокер десяток посылок по несколько мегабайт. Да, получается.
Я бы отключил анонимный доступ из сети - для проверки.
Это разные “лёгкие” устройства, которые подключаются к MQTT - шлюз чайника Redmond, ноутбук (и читал MQTT через MQTT.fx), часы на базе ESP8266 (читают с WB температуру и влажность в помещении, чтобы выводить на экран). У них нагрузка совсем не большая, и именно на чтение.
Попробую отключить, сообщу тогда через сутки.
Перед “отвалом” mosquitto я еще обратил внимание на malformed packet - тоже похоже на явного “предвестника”
Dec 15 00:10:56 wirenboard-ACHMBKEO mosquitto[10264]: 1702588256: Client 2720c0f3 has exceeded timeout, disconnecting.
Dec 15 00:10:57 wirenboard-ACHMBKEO mosquitto[10264]: 1702588256: Client 854fd4ec has exceeded timeout, disconnecting.
Dec 15 02:25:15 wirenboard-ACHMBKEO mosquitto[10264]: 1702596315: Client wb-modbus disconnected due to malformed packet.
Dec 15 02:25:15 wirenboard-ACHMBKEO mosquitto[10264]: 1702596315: Client r4s0 disconnected due to malformed packet.
Dec 15 02:25:16 wirenboard-ACHMBKEO mosquitto[10264]: 1702596316: New connection from /var/run/mosquitto/mosquitto.sock:0 on port 0.
Dec 15 02:25:16 wirenboard-ACHMBKEO mosquitto[10264]: 1702596316: New client connected from /var/run/mosquitto/mosquitto.sock:0 as wb-modbus (p2, c0, k60).
Dec 15 02:25:16 wirenboard-ACHMBKEO mosquitto[10264]: 1702596316: Client wb-modbus disconnected due to out of memory.
Dec 15 02:25:17 wirenboard-ACHMBKEO mosquitto[10264]: 1702596317: Client rules-wirenboard-ACHMBKEO-2100 disconnected due to out of memory.
Dec 15 02:25:17 wirenboard-ACHMBKEO mosquitto[10264]: 1702596317: New connection from /var/run/mosquitto/mosquitto.sock:0 on port 0.
Dec 15 02:25:17 wirenboard-ACHMBKEO mosquitto[10264]: 1702596317: New client connected from /var/run/mosquitto/mosquitto.sock:0 as rules-wirenboard-ACHMBKEO-2100 (p2>
Dec 15 02:25:18 wirenboard-ACHMBKEO systemd[1]: mosquitto.service: Main process exited, code=exited, status=255/EXCEPTION
Dec 15 02:25:18 wirenboard-ACHMBKEO systemd[1]: mosquitto.service: Failed with result 'exit-code'.
Dec 15 02:25:18 wirenboard-ACHMBKEO systemd[1]: mosquitto.service: Consumed 5min 25.746s CPU time.
Dec 15 02:25:18 wirenboard-ACHMBKEO systemd[1]: mosquitto.service: Scheduled restart job, restart counter is at 5.
Dec 15 02:25:18 wirenboard-ACHMBKEO systemd[1]: Stopped Mosquitto MQTT Broker.
Удаление wb-zigbee2mqtt. Я после увеличения памяти его опять запустил, но он очень много все равно использовал ресурсов в wb-rules - 30-40% ЦП и 60% памяти. Хотя для задач он был бы и нужен, но видимо на этих ресурсах он не может обрабатывать большое количество zigbee устройств - их у меня 47.