Jump to content
Калькуляторы

SNMPd не отвечает при высокой нагрузке

Здрасти, други.

Есть сервера доступа c Debian (NAS'ы), терминируют VPN клиентов. На них крутится net-snmp 5.4.3~dfsg-2.7. По SNMP с них снимает статистику балансировщик, а так-де Cacti. Так вот, в часы пик, когда нагрузка максимальна, SNMP не отвечает, из-за чего получается вот такое:

 

wb5762n8vkxwqdjbuw7kvuj2z.png

 

Это лечится или нет? Может есть какой-то другой high-perfomance snmp-"сервер"?

Share this post


Link to post
Share on other sites

Иногда OID не передаются, но существуют на серваке. Проверяется пуском snmpwalk с предварительной подготовкой на loopback типа 127.0.0.0.1 (желательно через at чтоб не изгаживать настройки крона). Тогда есть смысл пытаться самостоятельно модифицировать пакет ПО.

Edited by balabol

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

Люди, проблема не в Cacti, а в snmpd. Тот же Nagios тоже не получает информацию одновременно с Cacti, snmpget с таймаутом отвлаивается. Вроде бы где-то читал, что проблема возникает когда много интерфейсов (как здесь, NAS же), но могу путать.

Edited by morfair

Share this post


Link to post
Share on other sites

Включите максимальный уровень отладки в демоне, возможно он там что-то напишет.

 

А сколько интерфейсов и какая версия snmpd? могу попробовать создать такое же количество интерфейсов.

Edited by Painter

Share this post


Link to post
Share on other sites

Потерь до сервера нету, интерфейсов порядка 600-1000, ppp. В syslog'е это:

 

Jan 12 17:16:19 nas4 snmpd[2641]: error on subcontainer 'ia_addr' insert (-1)
Jan 12 17:16:19 nas4 snmpd[2641]: error on subcontainer 'ia_addr' insert (-1)
Jan 12 17:16:19 nas4 snmpd[2641]: error on subcontainer 'ia_addr' insert (-1)
Jan 12 17:16:19 nas4 snmpd[2641]: error on subcontainer 'ia_addr' insert (-1)
Jan 12 17:16:19 nas4 snmpd[2641]: error on subcontainer 'ia_addr' insert (-1)

 

На название хоста не обращайте внимание, ситуация со всеми NAS'ами схожая. Те, что помощнее, меньше пропусков, что послабее - пробелы больше.

Edited by morfair

Share this post


Link to post
Share on other sites

Люди, проблема не в Cacti, а в snmpd. Тот же Nagios тоже не получает информацию одновременно с Cacti, snmpget с таймаутом отвлаивается. Вроде бы где-то читал, что проблема возникает когда много интерфейсов (как здесь, NAS же), но могу путать.

Так и есть, я когда-то делал патчик что бы не отдавать инфу с ppp и ifb которых были мульены.

Только вот уже не сильно помню как (

Share this post


Link to post
Share on other sites

Попробовал создать 1000 интефейсов в 32 битной системе - "ifb numifbs=1000", запустил cpuburn и ping -f с удаленной стороны - snmp работает нормально, таймауты были только несколько секунд, во время создания интерфейсов.

После сделал тоже самое на x86_64 - при работе cpuburn и с 1000 интерфейсами статистика не снимается.

Если выключить ping -f, то snmp снова работает. Если оставить ping и убрать интерфейсы - все работает. Версии snmpd 5.4.3~dfsg-2.7 и 5.7.2~dfsg-8.1+b1.

 

Странно это все... а у вас 64 битная ОС?

Share this post


Link to post
Share on other sites

Потерь до сервера нету, интерфейсов порядка 600-1000, ppp. В syslog'е это:

 

Jan 12 17:16:19 nas4 snmpd[2641]: error on subcontainer 'ia_addr' insert (-1)
Jan 12 17:16:19 nas4 snmpd[2641]: error on subcontainer 'ia_addr' insert (-1)
Jan 12 17:16:19 nas4 snmpd[2641]: error on subcontainer 'ia_addr' insert (-1)
Jan 12 17:16:19 nas4 snmpd[2641]: error on subcontainer 'ia_addr' insert (-1)
Jan 12 17:16:19 nas4 snmpd[2641]: error on subcontainer 'ia_addr' insert (-1)

 

На название хоста не обращайте внимание, ситуация со всеми NAS'ами схожая. Те, что помощнее, меньше пропусков, что послабее - пробелы больше.

Это известный баг в snmpd, при большом количестве интерфейсов в системе он начинает виснуть. У меня на PPPoE шлюзах (debian x64 6.0.7)после 1000 интерфейсов ровно такая же ерунда. Где-то на просторах интернета вроде есть патч, но я так и не нашел работающий. Собираю статистику zabbix_agentd. К слову, при большом числе интерфейсов в системе, если оставить snmpd запущенным, у него еще и память течет, пока не сожрет всю доступную в системе. На debian wheezy еще не проверял, пофиксили это или нет.

 

Кстати, snmpd на железе Allied Telesis (Allied Ware Plus 5.4.1) имеет похожий глюк: после 1000 записей в arp \ fdb таблице snmpd перестает отдавать данные с 1001 элемента в списке. Писал багрепорт в русскую техподдержку, должны были пофиксить.

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
Sign in to follow this