LINUX.ORG.RU

Сообщения evgeny_oleynikov

 

Freeradius 3.0.17 + python2 скрипт зависает через несколько часов работы

Имеется кластер из 3х хостов с freeradius для аутентификации телефонии. Необходимо было в сжатые сроки внедрить в него взаимодействие с антифродом. Все было сделано на коленке с использованием exec и пары bash скриптов. Когда ркн был удовлетворен, встал вопрос по оптимизации системы. Было решено использовать модуль python. Переписал на питоне и после пары неудачных запусков все заработало на ура. Утилизация цпу упала, пауза при вызове заметно уменьшилась. Но через несколько часов работы скрипт встал колом. Ну т.е. он перестает отвечать на запросы радиуса. На любые - на авторизацию, на аккаунтинг. Естественно, все запросы при этом радиус начинает отвергать. Консультировался с опытными разработчиками на питоне. Код одобрен, все исключения учтены. Но увы - никакие новые доработки не принесли улучшений. Пришлось вернуться к скриптам на bash. Я конечно догадываюсь, что обновление радиуса и питона скорее всего решат проблему. Но это боевой кластер и упражняться на нем нельзя. Пробовал имитировать нагрузку в песочнице - нет, не повторяется. Пробовал делать некий watchdog который по разнице во времени между логами радиуса и скрипта производит перезапуск первого. Но не работает - когда ночью нагрузка рандомно падает, то появляются ложные срабатывания и иногда после этого радиус вовсе не запускается. Так вот, существует ли в freeradius какая-то опция которая заставит модуль python загружать скрипт на каждый запрос, а не загружать его в память раз и навсегда? Похоже проблема именно в том, что он загружается единожды при старте и дальше с ним происходит какая-то деградация (скорее всего память утекает).

 

evgeny_oleynikov
()

RSS подписка на новые темы