БиоМакс Posted March 27 (edited) · Report post Доброго времени суток! Пару месяцев назад в сети стали появляться периодические "подвисания" (потери пакетов). Стали разбираться с проблемой и обнаружили, что загрузка одного ядра (cpu23) прыгает 20-80% и часто на длительное время доходит до 100%. Причём общая загрузка процессора 1-3%. Стали разбираться, загрузка ядра происходит от firewall-а. Естественно первым делом стали проверять запросы DNS. Там всё нормально. В итоге обнаружили, что если открыть вкладку IP - Firewall - Connections, то загрузка ядра резко снижалась (до 7-20%) и такой оставалась. Стоило перейти с этой вкладки на другую (так, чтобы ни в одном WinBox она не была открыта), то через некоторое время загрузка этого ядра снова возрастала до 100%. В том числе и почти сразу после перезагрузки маршрутизатора. Кстати, после перезагрузки проблема снова возникала на этом же ядре. Прошивка была вроде 7.12.1. Модель микротик CCR1036-8G-2S+ Причину возникновения проблемы найти не смогли и оставили до появления новой прошивки. А до выхода новой прошивки на одном из серверов запустили WinBox и там открыли эту вкладку. Месяц так работали, потом в итоге обновили до 7.13.5 и всё вроде как прошло. НО по прошествию где-то месяца снова начались проблемы с загрузкой ядра процессора. Теперь аналогичная проблема на cpu3. Я, правда, ещё не пробовал перезагрузить маршрутизатор (очень сложно найти время, когда дадут добро на его перезагрузку), но даже если это и поможет, то исходя из опыта то не более, чем на месяц... Проще снова открыть вкладку IP - Firewall - Connections на каком-то из серверов и ждать новую прошивку. Никто не встречался с таким поведением микротик? Откуда могут ноги расти у этой проблемы? Дополнение: 1/4/2024 7:30 перезагрузил mikrotik. Нагрузка на ядра стала равномерной. Прошли сутки и вроде на одном из ядер процессора начинает увеличиваться загрузка. Теперь на cpu10 загрузка держится 15-35%. В пике до 53%. Наблюдаю дальше. Дополнение 2: 3/4/2024 14:25 Загрузка одного из ядер процессора продолжает нарастать. На данный момент загрузка cpu10 держится в среднем 43-73%. В пике достигает 90% Edited April 3 by БиоМакс Появилась новая информация Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Saab95 Posted April 6 · Report post В 27.03.2024 в 14:24, БиоМакс сказал: Прошивка была вроде 7.12.1. Модель микротик CCR1036-8G-2S+ Зачем такая прошивка, если CCR1036 еще работает с 6 версией? В 27.03.2024 в 14:24, БиоМакс сказал: Загрузка одного из ядер процессора продолжает нарастать. На данный момент загрузка cpu10 держится в среднем 43-73%. В пике достигает 90% Смотрите настройки фасттрак. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
БиоМакс Posted April 8 · Report post Цитата Смотрите настройки фасттрак. А не подскажете, в какую сторону там смотреть? Что искать? Из-за чего, из-за какой не правильной настройки может возникать так странно проявляющая себя проблема? Я не прошу решить за меня эту проблему, мне самому интересно её решить, просто пока не могу понять с какой стороны подойти. И в чём связь фасттрака и открытой/закрытой вкладки в Winbox? Непонятный вопрос, почему с открытой вкладкой в Winbox "IP - Firewall - Connections" всё работает без проблем месяцами, а при закрытой вкладке за несколько дней работы микротик после перезагрузки накапливается нагрузка на одно из ядер процессора. Ничего не меняя открываешь снова эту вкладку - и снова на ядре ноль. Зарываешь вкладку - и через 5 минут нагрузка снова. Перезагрузишь и снова можно 3-4 дня видеть постепенно накапливающуюся нагрузку на ядро. Цитата Зачем такая прошивка, если CCR1036 еще работает с 6 версией? Ну как-то привычка использовать последние стабильные версии. Их же не просто так выпускают. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
tcup Posted April 16 · Report post Когда на нашем отваливается graphing, тоже, кажется, ядро загружается на 100% (либо в целом, скачки на процессоре появляются). Помогает перезагрузка. 6.49.10 Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
БиоМакс Posted April 17 · Report post Цитата Когда на нашем отваливается graphing, тоже, кажется, ядро загружается на 100% (либо в целом, скачки на процессоре появляются). Помогает перезагрузка. 6.49.10 Graphing мы не используем. А перезагрузка и в нашем случае помогает. На три дня. За три дня после перезагрузки загрузка одного случайного ядра снова накапливается. И далее если открыть вкладку IP - Firewall - Connections, то загрузка ядра приходит в норму. Если с неё уйти или закрыть, то в течение 3-5 минут загрузка снова возрастает. Снова откроешь вкладку - снова в нули опускается И так до перезагрузки. После перезагрузки 3-4 дня постепенно растёт. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
VolanD666 Posted April 18 · Report post А если не вкладку открывать, а в консоли посмотреть? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
БиоМакс Posted April 22 · Report post Цитата А если не вкладку открывать, а в консоли посмотреть? А что посмотреть??? Проблема то только в том, что после перезагрузки в течении 3-4 дней накапливается нагрузка на одно из ядер процессора. И вкладку держим открытой только из-за того, что когда она открыта, то нагрузка на ядро очищается. Если всё закрыто (т.е. нет подключения к управлению микротиком и не открыта эта вкладка), то одно из ядер процессора накапливает нагрузку вплоть до 100%. При этом после перезагрузки набор идёт в течении 3-4 дней, а если после этого открыть Winbox и перейти на эту вкладку, то загрузка ядра очищается до нормальных значений. Если после этого закрыть Winbox (или хотябы перейти на другую вкладку), то загрузка в течении нескольких минут снова нарастает. На мой взгляд - это или глюк прошивки микротика, или, возможно, в настройках надо какую галочку поставить, чтобы не сохраняло и не накапливало нагрузку. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
nixx Posted April 23 · Report post у меня советы на уровне "а что там стучит под полом": - winbox у вас последней версии, 3.40? если нет, то обновите. - ip - firewall - connections - tracking - tcp established - попробуйте поставить минут 15. - и, все же, поставьте 6.49 прошивку, ибо 7я ветка до сих пор в совершенно неожиданных местах сырая, аж капает. "стабильная" в терминологии микротика - это "бета" в терминологии всех остальных. long-term стабильная. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
БиоМакс Posted April 24 · Report post Цитата - winbox у вас последней версии, 3.40? если нет, то обновите. Смысл??? В том то и дело, что проблема возникает когда Winbox не запущен и пропадает когда запускаешь Winbox и вкладку в нём. Но обновить - всё равно обновил. Лишним не будет. Цитата - ip - firewall - connections - tracking - tcp established - попробуйте поставить минут 15 Вот это попробовал ещё раз. Ничего не меняется. Цитата - и, все же, поставьте 6.49 прошивку, ибо 7я ветка до сих пор в совершенно неожиданных местах сырая, аж капает. "стабильная" в терминологии микротика - это "бета" в терминологии всех остальных. long-term стабильная. Вот это уже точно не вариант. Уже столько изменений в настройках с установленной 7-й версией сделано. Откатить вниз может уже не получиться. Проще работать с запущенным Winbox и открытой вкладкой IP - Firewall - Connections пока в Mikrotik не пофиксят эту проблему. Вдруг они о ней уже знают и чинят. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Saab95 Posted May 17 · Report post В 24.04.2024 в 09:23, БиоМакс сказал: Смысл??? В том то и дело, что проблема возникает когда Winbox не запущен и пропадает когда запускаешь Winbox и вкладку в нём. Но обновить - всё равно обновил. Лишним не будет. Так в консоли то же самое попробуйте выполнить - просмотр загрузки ядра, как на картинке в винбоксе. Далее добавляете в планировщик и пусть каждые 30 минут запускается. Либо просто запуск по стартапу роутера и пусть там monitor крутит просматривает данные через консоль до бесконечности. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
БиоМакс Posted May 20 · Report post Цитата Так в консоли то же самое попробуйте выполнить - просмотр загрузки ядра, как на картинке в винбоксе. Далее добавляете в планировщик и пусть каждые 30 минут запускается. Либо просто запуск по стартапу роутера и пусть там monitor крутит просматривает данные через консоль до бесконечности. Однако да, через терминал тоже чистится ядро. Как временное решение такой вариант будет не плох. Начинаю тестировать. Тем более, что в микротик заявку по проблеме держат без движения. Будем пока скриптом проблему решать. Спасибо! Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
DStalker Posted July 31 · Report post На х86 на версии 7.15.3 та-же проблема. Пока лечится по крону: /ip/firewall/connection/print where .dead но ребут всё равно приходится делать. сначала думал, что это из за периодического считывания раз в 10 минут /ip/firewall/connection/print на предмет анализа DDOS атак и блокировкой в /ip/firewall/raw через листы но это не подтвердилось - отключал на сутки один процесс через сутки всё таки начал "выделятся" от остальных потом подозревал что это из за постоянного висящего процесса через api который отрабатывал команды (считывание, добавление/удалиние IP из листов) свои через API на микротике, но т.к. у вас подобное поведение без постоянного соединения через api - то и это не подтверждается. Я даже и не знаю куда копать. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
DStalker Posted August 6 · Report post Приветствую. Кто-нибудь ещё сталкивался с подобным? Как решал данный вопрос? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Saab95 Posted August 19 · Report post Отключить все лишние задачи - такие как блокировки DDOS и прочее - если оставить лишь функции роутера, убрать API и отправлять команды по SSH - проблем не возникает. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
DStalker Posted October 8 · Report post Ради эксперимента решил проверить, в постоянных соединениях ли это API или нет: Вместо постоянного API подключения и периодического опроса в 5 минут mikrotika на предмет dhcp lease, arp, address-list сделал самостоятельными API подключениями при каждом запросе - в итоге, за 4 часа данных запросов (раз в 5 минут) получил +40% загрузки на одном из CPU с процессом firewall. Однако. Буду пробовать данный механизм переделывать на ssh/telnet Обновился до 7.16 - ситуация не поменялась, что бы полностью быть в этом уверенным быть. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Morty Posted October 8 · Report post В 20.08.2024 в 01:56, Saab95 сказал: убрать API и отправлять команды по SSH - проблем не возникает API - устаревшая технология? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
DStalker Posted October 8 · Report post Жаль, что деградация не обратимая, только ребут помогает. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
VolanD666 Posted October 8 · Report post А вы зачем туда по API/SSH лазите? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Morty Posted October 8 (edited) · Report post 14 минут назад, VolanD666 сказал: А вы зачем туда по API/SSH лазите? У меня, например, был клиент - микропровайдер. У него не было биллинга, а просто стояла 1С. Ему надо было при отрицательном балансе в 1С отключать абонента в микротике. Я написал небольшой скрипт, который дёргает баланс абонента из 1С и в микротике через API выключает/включает абонента. Потом ещё добавили шейпер (в 1С выставляется скорость) 🙂 Edited October 8 by Morty Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
VolanD666 Posted October 8 · Report post Ну я бы попробовал бы отключить все эти "костыли" и посмотреть что будет. Если это поможет- значит надо делать архитектуру без костылей и возможно без микротиков... Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
nixx Posted October 8 · Report post сдаунгрейдиться до 6 версии совсем никак? используете какие-то фичи, которых нет в ros6? или вот как выше ТС писал - " Откатить вниз может уже не получиться." всё же "может" или уже попробовали и не получилось? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Saab95 Posted October 8 · Report post 8 часов назад, Morty сказал: API - устаревшая технология? Эта технология не для целей управления списками доступа. 5 часов назад, Morty сказал: Я написал небольшой скрипт, который дёргает баланс абонента из 1С и в микротике через API выключает/включает абонента. Потом ещё добавили шейпер (в 1С выставляется скорость) Если схема списания не привязана к 1 числу месяца, то скорость срабатывания не имеет никакого значения - по всем абонентам отправка команд распределяется в течении месяца. Если нужно отправлять команды 1 числа, то надо в пределах одной сессии передавать одну команду без получения результата выполнения - отправили и все. Потом, если нужно получить списки для проверки - одной командой запросить сразу всю информацию и далее ее анализировать. Ошибкой является работа, когда после отправки идет ожидание выполнения команды. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
sirmax Posted October 8 · Report post 1 час назад, Saab95 сказал: Ошибкой является работа, когда после отправки идет ожидание выполнения команды. У программиста от б-га грех код не попросить, покажете? или как обычно? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...