Jump to content

Recommended Posts

Posted (edited)

Только у меня сабж периодически, раз в пару недель в среднем (от недели до трех где-то) падает в кернел паник?

Edited by NiTr0
  • Replies 7.4k
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Posted Images

Posted (edited)

Что писали - читал, но вроде это относилось к условно старым версиям...

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

А вообще - по логам получается, что где-то за N минут (от 3-5 минут до получаса и более нет записей) до виса/паники в логи перестают складываться сообщения...

Edited by NiTr0
Posted

на днях один из серверов у меня ушел в даун.

Пришел, включил монитор, залогинился. Визуально все работает, но фактически с него даже шлюз не пингается.

В дмесге сообщения о том что память кончилась.

Перезагрузил (корректно) - все ожило (естественно))

Скинуть dmrsg > log - забыл, торопился.

 

Возможно, и у вас они не виснут ...

 

Posted

Всем доброго времени суток.

Огромное спасибо xeb-у за его работу.

 

Может кто подскажет: при подключении виндовозного РРТР-клиента к PPTPD (родной poptop) иногда не ходят пакеты по туннелю (долго не верил, пока сам не попался). Проблема решается переподключением, либо просто подождать - иногда через несколько минут всё встает на свои места. Как позже оказалось, проблема не только у меня. Есть логи wireshark-а на стороне клиента, если поможет :).

 

Одновременных подключений ~ 60-80.

 

Может ли мне помочь accel? Стоит ли пробовать?

 

Заранее спасибо.

Posted
Возможно, и у вас они не виснут ...

Навряд... Т.к. 1) снмп мониторинг не показывал нехватки памяти накануне - ничего необычного вообще, ни роста load average (как на 0.7.11), ни уменьшения памяти; и 2) серв пытались погасить корректно (кнопка питания + acpid) - никакой реакции на данное действо.

Posted

последнии 2 подвисания (начались тормоза и провалы) (вчера и позавчера) на разных серверах... может правда и не аксель (стоит еще СНМП) но кто-то может наблюдал?

"...но буфер спэйс..."

помогает ребут :-)

Posted (edited)

Еще что аномального заметил - иногда на сервер пинг подскакивает до 40-50 мс (мониторится по СНМП кактусом, пинг - ним же мониторится).

Edited by NiTr0
Posted

NiTr0

Примерно 2 года назад были проблемы с snmpd при большом числе интерфейсов (типично для ВПН-серврера).

Отказался от использования snmpd.

 

Возможно, это были и мои кривые руки, но "осадок остался" - тот сервер проработал 2 года без сбоев после этого. Предпологаю что текла память в снмп при создании-удалении интерфейса.

Posted

Подтверждаю, где-то год-два назад net-snmpd "съедал" всю память на PPPoE- концетраторе под линукс и в конце концов зависал.

Posted

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

Есть в планах мерейти на zabbix - но пока что только планы.

Posted
Есть в планах мерейти на zabbix - но пока что только планы.
Хорошая вещь. Недавно поставил.

Вот только мониторить много ифейсов неудобно. В остальном - супер.

Posted

Наконец, выпущен долгожданные релиз 0.8.3, мы все долго над ним работали, исправлено много ошибок, внесено много поправок.

Объявляю благодарность всем кто помогал и словом, и делом!

 

https://sourceforge.net/project/showfiles.p...lease_id=685643

* fixed memory leak (thanks to magmike)

* fixed bug of hanging sessions (thanks to sdy_moscow)

* fixed error of code logic blocks in pptp_connect function

* fixed serios bug of initialization memory

* fixed bug of packet receiving while ppp channel is not registred

* channel list semaphore replaced by existing read_lock due to lock-held time is short

* cheking for channel with same call_id exists on connect

* simplified locking system

* fixed compilation issue for 2.6.18 kernel

* code cleanup

* changed packet reveing code

* more secure chan_lookup

* removed gre statistics

* removed reordered packet buffering

* added additional locking for more safety channel release

* included ppp-allow-mppe.patch

Posted (edited)

Эм... А можно узнать, в чем отличия от предыдущего билда - это же указаны отличия от предыдущего релиза (0.8.2)?

Думаю, этот вопрос волнует всех, у кого accel крутится на основной (не тестовой) машине...

Edited by NiTr0
Posted
Эм... А можно узнать, в чем отличия от предыдущего билда - это же указаны отличия от предыдущего релиза (0.8.2)?

Думаю, этот вопрос волнует всех, у кого accel крутится на основной (не тестовой) машине...

думаю код компаре поможет...

но я этим займусь после отпуска ;-) числа 15-го....

 

Posted (edited)
А можно узнать, в чем отличия от предыдущего билда
самое главное это
* fixed memory leak (thanks to magmike)
из-за чего происходило
последнии 2 подвисания (начались тормоза и провалы) (вчера и позавчера) на разных серверах
и пр.

 

так что всем рекомендую обновиться!

Edited by xeb
Posted (edited)

Спасибо за ответ.

 

P.S. А не поднять ли оверлей для gentoo с данным пакетом, + туда же включать еще некоторые полезные форки - тот же pppd с патчем поддержки gigawords к примеру - его в офф дерево так и не внесли ввиду "неправильности" подхода, а вещь весьма полезная и к тому же вполне стабильная...

Edited by NiTr0
Posted
Наконец, выпущен долгожданные релиз 0.8.3, мы все долго над ним работали, исправлено много ошибок, внесено много поправок.

Для корректной компиляции с 2.6.19 требуется чуток поправить:

@@ -489,7 +489,9 @@

}

 

skb->ip_summed=CHECKSUM_NONE;

+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,20)

skb_set_network_header(skb,skb->head-skb->data);

+ #endif

ppp_input(&po->chan,skb);

 

return NET_RX_SUCCESS;

@@ -567,7 +569,7 @@

 

#else /* LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,0) */

 

- #if LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,18)

+ #if LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,19)

return sk_receive_skb(sk_pppox(po), skb);

#else

return sk_receive_skb(sk_pppox(po), skb, 0);

 

Posted

Под 2.6.29 даже с указанным выше патчем не собирается.

На коленке решилось вот так:

--- accel-pptp-0.8.3-rev70/pppd_plugin/src/Makefile.in  2008-02-11 14:04:04.000000000 +0300
+++ accel-pptp-0.8.3-rev70.new/pppd_plugin/src/Makefile.in      2009-06-02 13:58:25.000000000 +0400
@@ -60,7 +60,7 @@
am_pptp_la_OBJECTS = pptp.lo pptp_callmgr.lo pptp_ctrl.lo util.lo \
        vector.lo dirutil.lo pptp_quirks.lo orckit_quirks.lo
pptp_la_OBJECTS = $(am_pptp_la_OBJECTS)
-DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
+DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir) -I/usr/src/linux/arch/x86/include
depcomp = $(SHELL) $(top_srcdir)/depcomp
am__depfiles_maybe = depfiles
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
--- accel-pptp-0.8.3-rev70/pptpd-1.3.3/Makefile.in      2008-02-11 14:04:04.000000000 +0300
+++ accel-pptp-0.8.3-rev70.new/pptpd-1.3.3/Makefile.in  2009-06-02 13:58:11.000000000 +0400
@@ -67,7 +67,7 @@
        getopt.$(OBJEXT) getopt1.$(OBJEXT)
pptpd_OBJECTS = $(am_pptpd_OBJECTS)
pptpd_DEPENDENCIES = $(am__DEPENDENCIES_1)
-DEFAULT_INCLUDES = -I. -I$(srcdir) -I.
+DEFAULT_INCLUDES = -I. -I$(srcdir) -I. -I/usr/src/linux/arch/x86/include
depcomp =
am__depfiles_maybe =
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \

Posted (edited)

читаем http://bugs.gentoo.org/show_bug.cgi?id=264388

Problem is in sys-kernel/linux-headers. Your version is 2.6.28-r1, but you need

2.6.29. Unfortunally, sys-kernel/linux-headers don't have this version yet.

так что ставим хедеры ядра 2.6.29 и плагин скомпилится, но есть еще одна проблема: make install не работает на 2.6.29, с этим еще не разбирался Edited by xeb
Posted
А как сейчас обстоят дела со стабильностью на 2.4? Возникла потребность поставить именно на это ядро.

Использую "свою" версию (брать в git wive-ng) проблем со стабильностью не замечено. xeb бы тоже глянул бы, там Андрей перепилил кой какие моменты...

Posted (edited)
но есть еще одна проблема: make install не работает на 2.6.29, с этим еще не разбирался

Обычный ебилд от 0.8.1 (с небольшими правками - т.к. у мну стоит свой билд пппд, пакет зовется по-другому) при компиляции ругался на отсутствие строки default в Makefile модуля ядра, добавление default: all ситуацию исправило :) Проинсталлился и работает...

В ебилде кстати в пост-инсталле - надо все же update-modules вызывать, а не modules-update, + после него depmod (т.к. руками его вызывать - некошерно, а без этого modprobe не работает).

Буду тестировать...

 

P.S. Кстати, назрел вопрос... Иногда pptpd после очередного зависания и ребута машины крашился практически сразу (от нескольких часов до нескольких десятков часов, как оригинальный, так и accel-pptp - причем когда начинался "шторм" на обычном pptpd, ради интереса поднимали и на другой машине pptpd сервер и перекидывали туда ип адрес - она тоже крашилась, т.е. дело не в железе), что в очередной раз наблюдалось сегодня ночью (до того - покрашился вчера, подняли в 8 утра, умер около 2 ночи, когда я днем подоткнул монитор - увидел только тайну черного экрана, на клаву не реагирует)... Соответственно - назрел вопрос: а не может ли кто-то/что-то его валить кривыми пакетами? Никто с таким не сталкивался?

Edited by NiTr0
Posted

Соответственно - назрел вопрос: а не может ли кто-то/что-то его валить кривыми пакетами? Никто с таким не сталкивался?

IMHO - ищи уязвимости в своём ядре и/или pppd.

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...