AF
Asterisk Forum
обсуждения телефонии, VoIP и IP-PBX
12разделов
5 423тем
34 385сообщений
← К списку тем

Падение системы и логи

Asterisk IP PBX 12 сообщений 11.11.2010 12:29 - 24.11.2010 01:00
#1 11.11.2010 12:29

Падение системы и логи


Есть такая ситуация: * 1.4.36 на Debian Lenny 5.0
При этом нерегулярно, где-то раз в неделю полторы система перестает отвечать внешнему миру. Доступ к ней имеется только по ssh. Помогает только перезагрузка. При этом, судя по логам, система нормально воспринимает нажатие на кнопку питание и корректно завершается. Но ssh и asterisk висят. При этом в /var/log/asterisk/mesages потерян хороший кусок логов. Допустим, если система упала в 15:00 то логов нету уже с семи утра. Куда копать/смотреть?
ЗЫ Пока что увеличил лимит на количество открытых файлов в safe_asterisk

_________________
Asterisk 1.4.30 @ Ubuntu 9.04 + Cisco MC3810 + NEC NEAX 2000IPS + Polycom IP Phones
#2 11.11.2010 14:28

Может оперативная память заканчивается?
#3 11.11.2010 15:40

А как это узнать в логах? Просто free выдает
Code:
server# free -m
total used free shared buffers cached
Mem: 2019 364 1655 0 95 166
-/+ buffers/cache: 102 1917
Swap: 956 0 956


А как посмотреть количество открытых файлов в системе?
ЗЫ: Думал, что что-то похожее на утечку UDP портов, но
Code:
netstat -anp | grep ast | wc -l
26

_________________
Asterisk 1.4.30 @ Ubuntu 9.04 + Cisco MC3810 + NEC NEAX 2000IPS + Polycom IP Phones
#4 11.11.2010 15:46

причин может быть воз и маленькая тележка
наиболее вероятны "железные проблемы"
нужно прикрутить какую-нибудь систему мониторинга типа munin и посмотреть
#5 11.11.2010 16:09

А она может работать на той же машине, что и *?
--
UPD
Нашел по кол-ву открытых файлов. Аптайм - порядка 15 часов.
Code:
server# lsof | grep -c ''
1798
server# lsof | grep -c aste
231

_________________
Asterisk 1.4.30 @ Ubuntu 9.04 + Cisco MC3810 + NEC NEAX 2000IPS + Polycom IP Phones
#6 13.11.2010 06:43

Чтобы подиагностировать надо как минимум
а) настроить syslog на другую машину
б) сохранять раз в 1-5 минут допустим выводы df -h, df -i, ps uaxww
в) ответить на вопрос, пингуется ли машинка в момент X и что происходит при telnet машинка 22
г) Может, там iptables и conntrac, который переполняется?

Точто астериск работает между 7:00 - 15:00?
#7 13.11.2010 09:38

а) syslog - это хорошо, но нету возможности.
б) Спасибо, сделаю.
в) Ничего не происходит . Машина висит. Не отвечает вообще

И да, работает. Мне бы позвонили Smile

_________________
Asterisk 1.4.30 @ Ubuntu 9.04 + Cisco MC3810 + NEC NEAX 2000IPS + Polycom IP Phones
#8 13.11.2010 13:00

если это утечка памяти (а как по мне так очень похоже на то) то я бы написал скрипт, который например каждую минуту будет сохранять кудато в файл статистику по процессам и сколько памяти каждый процес отожрал. если к делу подойти творчески то можно даже рисовать графики "в почти реалтайм". взглянув на которые можно сразу увидеть проблемную софтину.
может быть уже ктото делал такое (не удивлюсь, ибо идея лежит прямо на поверхности) - покопайтесь гденить в архивах sourceforge...

Added after 48 minutes:

вот например
http://memp.sourceforge.net/
http://jeetworks.org/programs/syrupy
http://www.daimi.au.dk/~sandmann/sysprof/
http://sysusage.darold.net/
http://ramust.sourceforge.net/

_________________
Мои рекомендации: Asterisk-1.8 + G.722 кодек = лучший выбор!
Успехов!
#9 13.11.2010 14:36

поправте если я ошибаюсь
но если это утечка памяти то придет oomkiller который оставляет записи в /var/log/messages
#10 13.11.2010 15:48

http://pscope.sourceforge.net/
Quote:
It is most helpful for systems crashing due to load where one cannot determine the cause.

_________________
Мои рекомендации: Asterisk-1.8 + G.722 кодек = лучший выбор!
Успехов!
#11 17.11.2010 07:29

В общем, за 2 дня тестов выясняется интересная картина
В строке Mem: total used free shared buffers cached
Потом результаты lsof | grep -c '' и lsof | grep -c 'aste'
Code:
Вто Ноя 16 10:22:55 EET 2010
Mem: 2019 193 1826 0 15 94
1971 253

Code:
Wed Nov 17 08:22:01 EET 2010
Mem: 2019 445 1573 0 144 208
1895 222


Code:
Wed Nov 17 20:58:01 EET 2010
Mem: 2019 615 1403 0 179 322
2399 207


Причем память отжирается вполне постепенно. Но меня смущает, что это все происходит в основном за счет кэша. Количество открытых файлов - в пределах от 1700 до 2000, астериск из них - 200-300.

А утечки памяти ли это? Просто активно используются Queue с нагрузкой порядка 1500 звонков в день.

_________________
Asterisk 1.4.30 @ Ubuntu 9.04 + Cisco MC3810 + NEC NEAX 2000IPS + Polycom IP Phones
#12 24.11.2010 01:00

я бы сменил модули памяти для начала на сервере. на проверенные. и убил бы в памяти все процессы которые не особо нужны (если есть такие). и посмотреть что изменится.
_________________
Мои рекомендации: Asterisk-1.8 + G.722 кодек = лучший выбор!
Успехов!