Jump to content

Recommended Posts

Posted (edited)

Доброго времени суток!

Пару месяцев назад в сети стали появляться периодические "подвисания" (потери пакетов). Стали разбираться с проблемой и обнаружили, что загрузка одного ядра (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 by БиоМакс
Появилась новая информация
  • 2 weeks later...
  • Replies 59
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Posted Images

Posted
В 27.03.2024 в 14:24, БиоМакс сказал:

Прошивка была вроде 7.12.1. Модель микротик CCR1036-8G-2S+

Зачем такая прошивка, если CCR1036 еще работает с 6 версией?

 

В 27.03.2024 в 14:24, БиоМакс сказал:

Загрузка одного из ядер процессора продолжает нарастать. На данный момент загрузка cpu10 держится в среднем 43-73%. В пике достигает 90%

Смотрите настройки фасттрак.

Posted
Цитата

Смотрите настройки фасттрак.

А не подскажете, в какую сторону там смотреть? Что искать? Из-за чего, из-за какой не правильной настройки может возникать так странно проявляющая себя проблема? Я не прошу решить за меня эту проблему, мне самому интересно её решить, просто пока не могу понять с какой стороны подойти. И в чём связь фасттрака и открытой/закрытой вкладки в Winbox? Непонятный вопрос, почему с открытой вкладкой в Winbox "IP - Firewall - Connections" всё работает без проблем месяцами, а при закрытой вкладке за несколько дней работы микротик после перезагрузки накапливается нагрузка на одно из ядер процессора. Ничего не меняя открываешь снова эту вкладку - и снова на ядре ноль. Зарываешь вкладку - и через 5 минут нагрузка снова. Перезагрузишь и снова можно 3-4 дня видеть постепенно накапливающуюся нагрузку на ядро.

 

Цитата

Зачем такая прошивка, если CCR1036 еще работает с 6 версией?

Ну как-то привычка использовать последние стабильные версии. Их же не просто так выпускают. 

 

Posted
Когда на нашем отваливается graphing, тоже, кажется, ядро загружается на 100% (либо в целом, скачки на процессоре появляются). Помогает перезагрузка. 6.49.10
Posted
Цитата

Когда на нашем отваливается graphing, тоже, кажется, ядро загружается на 100% (либо в целом, скачки на процессоре появляются). Помогает перезагрузка. 6.49.10

Graphing мы не используем. А перезагрузка и в нашем случае помогает. На три дня. За три дня после перезагрузки загрузка одного случайного ядра снова накапливается. И далее если открыть вкладку IP - Firewall - Connections, то загрузка ядра приходит в норму. Если с неё уйти или закрыть, то в течение 3-5 минут загрузка снова возрастает.
image.thumb.jpeg.f8dffb573f81abb72c17dd4dfee9e930.jpeg

 

Снова откроешь вкладку - снова в нули опускается

image.thumb.png.a3fac809d5d74c09f54f406f5ff5f231.png

 

И так до перезагрузки. После перезагрузки 3-4 дня постепенно растёт.

 

Posted
Цитата

А если не вкладку открывать, а в консоли посмотреть?

А что посмотреть??? Проблема то только в том, что после перезагрузки в течении 3-4 дней накапливается нагрузка на одно из ядер процессора. И вкладку держим открытой только из-за того, что когда она открыта, то нагрузка на ядро очищается. Если всё закрыто (т.е. нет подключения к управлению микротиком и не открыта эта вкладка), то одно из ядер процессора накапливает нагрузку вплоть до 100%.

При этом после перезагрузки набор идёт в течении 3-4 дней, а если после этого открыть Winbox и перейти на эту вкладку, то загрузка ядра очищается до нормальных значений. Если после этого закрыть Winbox (или хотябы перейти на другую вкладку), то загрузка в течении нескольких минут снова нарастает.

На мой взгляд - это или глюк прошивки микротика, или, возможно, в настройках надо какую галочку поставить, чтобы не сохраняло и не накапливало нагрузку. 

Posted

у меня советы на уровне "а что там стучит под полом":

- winbox у вас последней версии, 3.40? если нет, то обновите.

- ip - firewall - connections - tracking - tcp established  - попробуйте поставить минут 15.

- и, все же, поставьте 6.49 прошивку, ибо 7я ветка до сих пор в совершенно неожиданных местах сырая, аж капает. "стабильная" в терминологии микротика - это "бета" в терминологии всех остальных. long-term стабильная.

Posted
Цитата

- winbox у вас последней версии, 3.40? если нет, то обновите.

Смысл??? В том то и дело, что проблема возникает когда Winbox не запущен и пропадает когда запускаешь Winbox и вкладку в нём. Но обновить - всё равно обновил. Лишним не будет.

Цитата

- ip - firewall - connections - tracking - tcp established  - попробуйте поставить минут 15

Вот это попробовал ещё раз. Ничего не меняется.

Цитата

- и, все же, поставьте 6.49 прошивку, ибо 7я ветка до сих пор в совершенно неожиданных местах сырая, аж капает. "стабильная" в терминологии микротика - это "бета" в терминологии всех остальных. long-term стабильная.

Вот это уже точно не вариант. Уже столько изменений в настройках с установленной 7-й версией сделано. Откатить вниз может уже не получиться. Проще работать с запущенным Winbox и открытой вкладкой IP - Firewall - Connections  пока в Mikrotik не пофиксят эту проблему. Вдруг они о ней уже знают и чинят.

 

 

 

  • 4 weeks later...
Posted
В 24.04.2024 в 09:23, БиоМакс сказал:

Смысл??? В том то и дело, что проблема возникает когда Winbox не запущен и пропадает когда запускаешь Winbox и вкладку в нём. Но обновить - всё равно обновил. Лишним не будет.

Так в консоли то же самое попробуйте выполнить - просмотр загрузки ядра, как на картинке в винбоксе.

 

Далее добавляете в планировщик и пусть каждые 30 минут запускается.

 

Либо просто запуск по стартапу роутера и пусть там monitor крутит просматривает данные через консоль до бесконечности.

Posted
Цитата

Так в консоли то же самое попробуйте выполнить - просмотр загрузки ядра, как на картинке в винбоксе.

 

Далее добавляете в планировщик и пусть каждые 30 минут запускается.

 

Либо просто запуск по стартапу роутера и пусть там monitor крутит просматривает данные через консоль до бесконечности.

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

Тем более, что в микротик заявку по проблеме держат без движения. Будем пока скриптом проблему решать. 

Спасибо!

  • 2 months later...
Posted

На х86 на версии 7.15.3 та-же проблема.

Пока лечится по крону:

/ip/firewall/connection/print where .dead

 

но ребут всё равно приходится делать.

 

сначала думал, что это из за периодического считывания раз в 10 минут /ip/firewall/connection/print на предмет анализа DDOS атак и блокировкой в /ip/firewall/raw через листы

но это не подтвердилось - отключал на сутки один процесс через сутки всё таки начал "выделятся" от остальных

 

потом подозревал что это из за постоянного висящего процесса через api который отрабатывал команды (считывание, добавление/удалиние IP из листов) свои через API на микротике, но т.к. у вас подобное поведение без постоянного соединения через api - то и это не подтверждается.

 

Я даже и не знаю куда копать.

 

Снимок экрана 2024-07-31 222728.png

  • 2 weeks later...
Posted

Отключить все лишние задачи - такие как блокировки DDOS и прочее - если оставить лишь функции роутера, убрать API и отправлять команды по SSH - проблем не возникает.

  • 1 month later...
Posted

Ради эксперимента решил проверить, в постоянных соединениях ли это API или нет:

 

Вместо постоянного API подключения и периодического опроса в 5 минут mikrotika на предмет dhcp lease, arp, address-list сделал самостоятельными API подключениями при каждом запросе - в итоге, за 4 часа данных запросов (раз в 5 минут) получил +40% загрузки на одном из CPU с процессом firewall.

 

Однако.

 

Буду пробовать данный механизм переделывать на ssh/telnet

 

Обновился до 7.16 - ситуация не поменялась, что бы полностью быть в этом уверенным быть.

Снимок экрана от 2024-10-08 16-30-40.png

Posted (edited)
14 минут назад, VolanD666 сказал:

А вы зачем туда по API/SSH лазите?

У меня, например, был клиент - микропровайдер.
У него не было биллинга, а просто стояла 1С.
Ему надо было при отрицательном балансе в 1С отключать абонента в микротике.
Я написал небольшой скрипт, который дёргает баланс абонента из 1С и в микротике через API выключает/включает абонента.
Потом ещё добавили шейпер (в 1С выставляется скорость) 🙂

Edited by Morty
Posted

Ну я бы попробовал бы отключить все эти "костыли" и посмотреть что будет. Если это поможет- значит надо делать архитектуру без костылей и возможно без микротиков...

Posted

сдаунгрейдиться до 6 версии совсем никак? используете какие-то фичи, которых нет в ros6?

 

или вот как выше ТС писал - " Откатить вниз может уже не получиться."

всё же "может" или уже попробовали и не получилось?

Posted
8 часов назад, Morty сказал:

API - устаревшая технология?

Эта технология не для целей управления списками доступа.

 

5 часов назад, Morty сказал:

Я написал небольшой скрипт, который дёргает баланс абонента из 1С и в микротике через API выключает/включает абонента.
Потом ещё добавили шейпер (в 1С выставляется скорость)

Если схема списания не привязана к 1 числу месяца, то скорость срабатывания не имеет никакого значения - по всем абонентам отправка команд распределяется в течении месяца.

 

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

 

Ошибкой является работа, когда после отправки идет ожидание выполнения команды.

Posted
1 час назад, Saab95 сказал:

Ошибкой является работа, когда после отправки идет ожидание выполнения команды.

У программиста от б-га грех код не попросить, покажете? 
 

или как обычно?

  • 6 months later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...
На сайте используются файлы cookie и сервисы аналитики для корректной работы форума и улучшения качества обслуживания. Продолжая использовать сайт, вы соглашаетесь с использованием файлов cookie и с Политикой конфиденциальности.