Jump to content
Local
Constantine.Kazakoff

Abills BRAS /usr/abills/misc/pppd_kill плодится

Recommended Posts

Доброго уважаемым форумчанам!

 

Обратился небольшой провайдер на ~300 абонов.

Абонов обслуживает Abills 0.56 в одном флаконе с pppd на ubuntu server 14.04.1 (два ядра, два гига, два Intel igb 82576). Устанавливал и настраивал непонятно кто неизвестно когда, потом в процессе ещё разные люди его допиливали. В общем, не самый лучший вариант, но работало всё без малейших нареканий.

Позавчера вечером примерно в 21:30 по неизведанной причине начали плодиться процессы /usr/abills/misc/pppd_kill.

Естественно, об этом никто не знал, ибо админа нет, а сам провайдер даже не в курсе, что у его сервера есть какой-то иной интерфейс, кроме веб-морды. Поэтому общее количество процессов дошло до отметки 18170 и сервак впал в ступор.

После ребута начали анализировать, что могло к этому привести и докопались до проблемы.

Этой ночью сервер был трижды перезагружен, ритуальный танец вокруг него сплясан.

Процессы плодятся примерно по 500-600 в час ночью и по 1500-2000 в час днём во время активности.

К сожалению, ни по логам, ни по кофейной гуще не удалось установить, что могло привести к возникновению сего чуда и как с этим бороться.

Гугл в курсе только, что делать, если /usr/abills/misc/pppd_kill не запускается или не работает, а вот что делать, когда он плодится, аки кролик - непонятно.

Может, кто уже сталкивался с подобной проблемой?

 

З.Ы. На данный момент работает костыль в виде 0 */1 * * *     root    killall pppd_kill, который, конечно, не даст серваку уйти в ступор, но проблему таки было бы неплохо решить.

Share this post


Link to post
Share on other sites

настройте отправку почты с крона на админ email и увидите причину их появления

Edited by ~AsmodeuS~

Share this post


Link to post
Share on other sites

перейти на accel-ppp и забыть про костыли как страшный сон... или поставить radcoad (пилил для себя пока accel-ppp не было)

Share this post


Link to post
Share on other sites

настройте отправку почты с крона на админ email и увидите причину их появления

Админа нет, мыла нет :)

Спасибо, попробую, как доберусь до компа. С телефона неудобно и лень.

Share this post


Link to post
Share on other sites

перейти на accel-ppp и забыть про костыли как страшный сон... или поставить radcoad (пилил для себя пока accel-ppp не было)

Ага, заодно поставить последнюю халявную версию Abills или чего-нибудь ещё халявного и перевести абонов на IPoE+vlan-per-user.

Зри в корень. © Козьма Прутков

Провайдер на ~300 абонов, админа нет.

Никто ничего не будет менять, ибо нерентабельно.

Вся эта байда проработает ровно до того момента, пока провайдер не сдастся на милость победителя.

Edited by Constantine.Kazakoff

Share this post


Link to post
Share on other sites

ну тогда не делайте ничего. или тратьте кучу времени в поисках, почему же вдруг костыль перестал работать..

Share this post


Link to post
Share on other sites

ну тогда не делайте ничего. или тратьте кучу времени в поисках, почему же вдруг костыль перестал работать..

Собственно, костыль сделал я вчера ночью, дабы сервак не ушел в ступор. И он таки работает :)

А с чего процессы начали плодиться, пока неясно.

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

Делов-то.

Share this post


Link to post
Share on other sites

 

 

Собственно, костыль сделал я вчера ночью, дабы сервак не ушел в ступор.

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

 

вы же подперли один кривой костыль другим.

 

при том, что поставить/настроить accel-ppp - дело 10-15 минут (абиллс 0.56 вроде уже умел accel-ppp, он же accel-pptp, или как минимум pppd+radcoad тип наса который прекрасно тоже будет работать). не хочется заморачиваться - можно собрать и запустить radcoad, который суть костылик для обрыва сессии по радиусу.

Share this post


Link to post
Share on other sites

настройте отправку почты с крона на админ email и увидите причину их появления

Или я что-то не понял, или ежесуточный отчёт вашего детища имеет мало отношения к админу.

В любом случае, процессы внезапно перестали плодиться сами по себе без видимых внешних воздействий.

Что было - непонятно.

Share this post


Link to post
Share on other sites

а глянуть lsof процесса не судьба?

может оно висело из-за того что почту отправить не могло? :D

Share this post


Link to post
Share on other sites

а глянуть lsof процесса не судьба?

может оно висело из-за того что почту отправить не могло? :D

Я что-то пропустил?

Кто где висел и причем здесь почта?

Share this post


Link to post
Share on other sites

Я имел в виду, вдруг процессы плодились из-за того, что не могло почту отправить :)

Share this post


Link to post
Share on other sites

Я имел в виду, вдруг процессы плодились из-за того, что не могло почту отправить :)

Интересно, как отправка почты вообще связана с убийством рррое?

И почему два года все работало, никуда ничего не отправляя, а потом перестало?

Почта накопилась?

Edited by Constantine.Kazakoff

Share this post


Link to post
Share on other sites

 

Я имел в виду, вдруг процессы плодились из-за того, что не могло почту отправить :)

Интересно, как отправка почты вообще связана с убийством рррое?

И почему два года все работало, никуда ничего не отправляя, а потом перестало?

Почта накопилась?

 

Это было просто шуточное предположение.

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

И внезапно всё заработало должным образом.

Share this post


Link to post
Share on other sites

Хронологически настройка отправки почты и самоустранение глюка не совсем связаны.

Но Асмодеус таки что-то знает :)

Share this post


Link to post
Share on other sites

Хронологически настройка отправки почты и самоустранение глюка не совсем связаны.

Но Асмодеус таки что-то знает :)

крон сам отправляет на действующего админа почту по факту, если програма что то выдаёт на консоль

 

зависания могли быть связанны с тем что не закрывалась программа или "ктото адаптировал её под себя"

Share this post


Link to post
Share on other sites

перейти на accel-ppp и забыть про костыли как страшный сон... или поставить radcoad (пилил для себя пока accel-ppp не было)

Заменить один костыль другим и забыть про костыли :):P

Share this post


Link to post
Share on other sites

kostily2.jpg

 

я подкину ещё выбора :)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By MorS
      Здравствуйте! 1-го числа каждого месяца, видимо, из-за процесса закрытия учетного периода "падает" радиус сервер:
       
      May  1 00:00:15 billing kernel: [466821.810836] freeradius[15947]: segfault at 2012 ip 00007f7a9586f5da sp 00007f7a427fac60 error 4
      May  1 00:00:15 billing kernel: [466821.810849] freeradius[15991]: segfault at 2012 ip 00007f7a9586f5da sp 00007f7a1a7f2c60 error 4 in rlm_perl-2.2.6.so[7f7a9586c000+6000]
      May  1 00:00:15 billing kernel: [466821.811111]  in rlm_perl-2.2.6.so[7f7a9586c000+6000]
      May  1 00:00:15 billing kernel: [466821.812848]  in rlm_perl-2.2.6.so[7f7a9586c000+6000] in rlm_perl-2.2.6.so[7f7a9586c000+6000]
       
      Информация о системе:
      -  OC Debian-7.11.0 Linux  2.6.32-3-amd64
      - Версия биллинга ABillS 0.56b/20140807
      - freeradius: FreeRADIUS Version 2.2.6
      - mysqld  Ver 5.1.47-1
      - сервера доступа Mikrotik (12 шт.)
      - абонентов on-line на 1.05.2019 00:00:00 - 5570
      Большинство тарифных планов с помесячной абонентской платой, с распределением абонплаты, макс. время сессии - 65535 сек.
       
      Перезапуск радиуса вручную толку дает мало,система "приходит в себя" через несколько часов. Помогут ли следующее варианты решения проблемы:
      1 вариант 
      - выставить в параметрах сервера доступа !Session-Timeout=0,  макс. время сессии - 0 сек, отключить  в crontab (1    0  *  *  *  root   /usr/abills/libexec/periodic daily
      1    1  *  *  *  root   /usr/abills/libexec/periodic monthly)
      - 1-го числа каждого месяца (или каждые сутки?) воспользоваться программой autozh.pl и по очереди по одному насу переинициализировать сессии для сбора статистики.
       
      2 вариант
      В дополнении к первому пересобрать радиус на более свежий из второй ветки - 2.2.10. Возможно. проблема в нем. Плюс доработать скрипт, что следит за состоянием радиус-сервера (типа if [ -z "$(ps x | grep free[rad])" ]; then date >> /root/die.log;rm -f /var/run/freeradius/freeradius.pid;/etc/init.d/freeradius stop;/etc/init.d/freeradius start; fi)
       
      3 вариант
      В тарифных планах отказаться от месячной абонплаты  и настроить дневную абонентскую плату. В crontab оставить только periodic daily. Возможно это сделает нагрузку на биллинг более равномерной.
       
      4 вариант 
      Апгрейд биллинга до последней версии  - возможно модуль rlm_perl будет работать стабильнее. Интересует целесообразность и цена обновления.
       
      Возможно, у есть другие варианты, с удовольствием с ними ознакомлюсь.
      P.S. Может у кого есть autozh.pl для 0.5x версии биллинга? Скиньте, пожалуйста!
    • By ~AsmodeuS~
      Релиз ABillS Infinity 0.80
       
      ABillS Infinity
       
      Долгожданная open source версия биллинга ABillS 0.80! 
      Новые возможности, дополнения, исправления и улучшения выполнены в частности в  модулях:
       
      Internet+
      Поддержка Huawei ME60 Поддержка ZTE M6000 Добавлена фильтрация по меткам в Internet мониторинге Переход на следующий тарифный план со статусом “Недостаточно средств” Параметр игнорирования MAC-авторизации Поиск сессий по CPE_MAC  
      Equipment
      Поиск дублирующихся серийных номеров ONU Просмотр количества свободных и занятых ONU Сбор прошивок с оборудования Интеграция с GPON Eltex и OLT V-Solution Графики скорости пользователя в реальном времени Быстрый отчет по оборудованию Paysys
      Новые платежные системы E-Pul, Payme, Concord  
      Iptv
      Новые модули Microimpuls, Omega TV  
      Msgs
      Добавлен чат, нотификация сообщений в чате, глобальные оповещения Добавлены новые отчеты по сообщениям  
      Crm
      Автоматизированный расчет выплаты зарплат Добавлены нормы рабочего времени Работа с лидами — визуальное отображение воронки продаж  
      Storage
      Добавлена возможность перемещения товара со склада на склад Добавлены печатные формы Приходной накладной, Расходной накладной Добавлен фильтр по партии на складе  
      Добавлен docker контейнер с базовой конфигурацией Abills, v.0.80
      Скачать: https://sourceforge.net/projects/abills/files/abills/0.8/
      Автоустановка: http://abills.net.ua:8090/pages/viewpage.action?pageId=1278106
       
    • By Sweduk
      Здравствуйте.
      Возможно кто то испытывал такие же проблемы как у меня на сервере. 
      Каждые пол часа у всех абонентов пропадает интернет, при этом в роутерах значение IP адреса вместо назначенного DHCP сервером становится 0.0.0.0
      Если статически задать IP адрес абоненту,интернет работает стабильно.
      На сколько я знаю (настраивал не я) у нас стоит такая связка - ISC DHCP для ABillS.
      По какой причине могут отваливаться IP адреса у абонентов а затем через 3-5 минут они снова их получают и интернет возобнавляется и так циклично?
      В настройках сервера срок аренды адреса указан был изначально 300 сек,поменял на 600,ничего не дало.
    • By masters
      Стоит Abills (0.59) на Centos 6, и несколько НАСов на FreeBSD 11, mpd5.
      Белые IP распределяются динамически по протоколу RIP (на фре - quagga).
       
      Проблема в том, что когда у пользователя некорректно завершается PPPoE сессия (обрыв, роутер перегрузили), маршрут по RIP не подымается, соответственно интернета нет.
       
      Есть подозрение - что это происходит из-за того, что биллинг разрешает клиенту вторую сессию параллельно. Когда пользователь поднимает 2ю сессию, первая рубится - и соответственно, с ней Quagga дропает и маршрут. Если потом завершить сессию корректно, то маршрут подымается и работает нормально.
       
      Есть ли возможность запретить поднимать вторую сессию? Пусть например пользователь ждет пока не выйдет таймаут, и первая не дропнется.
    • By inspire_871
      Здравствуйте. Столкнулись с проблемой создания списка  улиц по районам города. Имеется 4 района в городе, в каждом районе около 300 улиц. Может кто подскажет какой сервис или как вытянуть из гугл, яндекс карт улицы конкретного района. Уж больно не хочется каждую улицу прописывать ручками
×