Перейти к содержимому
Калькуляторы

snmpd и большое кол-во vlan интерфейсов Грузит проц под потолок.. :(

CentOS 5.5, Intel® Xeon™ CPU 2.66GHz, 4 ядра. На нём терминация vlan, плюс крутятся dhcpd, named, ну и ещё кое-что по-мелочи.

Кол-во vlan интерфейсов на данный момент ~400, в перспективе - более 1000.

Проблема с snmpd - периодически (не менее 2-3 раз в минуту) snmpd грузит проц практически под 100%

 PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
24968 root      20   0  156m  11m 4220 R 99.3  0.6   1354:01 snmpd
31747 named     20   0  488m 327m 2512 S 23.8 16.3   1337:31 named

От сервера требуется всего лишь отдавать для cacti (на другой машине) данные по загрузке CPU, UPS, температуру HDD (для них "свои" OID в snmpd.conf) и мониторинг дискового пространства на предмет занято/свободно.

Мониторинг сетевых интерфейсов НЕ производится совсем.

Предполагаю, что источником загрузки являются всё же vlan-интерфейсы.

Вопрос банальный - что делать?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Можно попробовать отключить Data query "Interface statistics" в профиле кактуса для этого хоста.

Это отключит перечисление интерфейсов при каждом обращении поллера.

Не помешает даже, если ведется статистика интерфейсов, существующие графики останутся, а для создания новых нужно будет временно заново добаить этот data query/

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Можно попробовать отключить Data query "Interface statistics" в профиле кактуса для этого хоста.

Отключен уже давно, т.к. не требуется. Результат нулевой..

Вот как бы отключить в самом snmpd создание таблиц интерфейсов, ну или ограничить хотя бы только ethernet интерфейсами.

 

P.S. Есть ещё предположение, что дело не только в кол-ве интерфейсов, но вот в чём именно??

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

при запуске snmpd можно указать список только необходимых мибов. man snmpd

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

при запуске snmpd можно указать список только необходимых мибов. man snmpd

"Необходимых"?? Это крУто! На такое толку не хватает.. :(

Пробовал наоборот - исключить "ненужные",

OPTIONS="-Lsd -Lf /dev/null -c /etc/snmp/snmpd.conf -C -I -ifXTable,ifTable,interfaces,ipAddressTable -p /var/run/snmpd.pid -a -x 127.0.0.1,10.254.213.254"

не помогает..

Всё равно загрузка проца не падает..

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

У меня тоже самое было на серверах доступа (NAS'ах), где коммутировались PPP-сессии абонентов. Статистику с них для балансировщика хотел забирать от snmpd, а тот так же чудил и грузил проц.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

У меня тоже самое было на серверах доступа (NAS'ах), где коммутировались PPP-сессии абонентов. Статистику с них для балансировщика хотел забирать от snmpd, а тот так же чудил и грузил проц.

И? Решили проблему, или с тем и живёте?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Мне такое помогло:

/usr/sbin/snmpd -I-interface -I-ipAddressTable -I-ifTable -I-ifXTable -Lsd -Lf /dev/null -u snmp -g snmp -I -smux -p /var/run/snmpd.pid

 

snmpd -v

NET-SNMP version: 5.4.3

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Мне такое помогло:

/usr/sbin/snmpd -I-interface -I-ipAddressTable -I-ifTable -I-ifXTable -Lsd -Lf /dev/null -u snmp -g snmp -I -smux -p /var/run/snmpd.pid

 

snmpd -v

NET-SNMP version: 5.4.3

Так тоже самое, что и у меня.. Разве-что "-smux" нету, не думаю, что он тут "при делах"..

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

В snmpd.conf у вас какой указан sysservices ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

В snmpd.conf у вас какой указан sysservices ?

Не указан вообще, закомментирована строка.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Мне ничего из описанного в этой теме не помогло (

Еще какие то идеи есть?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Мне ничего из описанного в этой теме не помогло (

Еще какие то идеи есть?

отказаться от snmpd в пользу агентов мониторинга(например у заббикса есть такая штука)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Простое решение - поместить snmpd в namespace где нет многих интерфейсов и full view

Мне - помогло.

 

namespaces просто какая-то серебряная пуля )

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Простое решение - поместить snmpd в namespace где нет многих интерфейсов и full view

А поподробнее, как это осуществить, расскажите, пожалуйста.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

AlKov

просто в старт-скрипт добавляете что-то типа такого

ip netns add SNMPD

ip link set eth0.2 netns SNMPD

ifconfig eth0.2 1.1.1.1/30 up

ip netns exec SNMPD ip ro add 0.0.0.0 via 1.1.1.2

ip netns exec SNMPD "запуск snmpd"

 

потом опрашиваете данные по ip-адресу 1.1.1.1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

AlKov

просто в старт-скрипт добавляете что-то типа такого

ip netns add SNMPD

Невезуха - Centos из коробки не поддерживает netns..

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А мне помогло вот это собрал либу, сделал ld_preload для snmp и все... теперь отдается все кроме ppp интерфейсов. нагрузка на процессор упала да и snmp по таймауту не отваливается

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Можно попробовать выкрутить повыше через snmpset "NET-SNMP-AGENT-MIB::nsCacheTimeout.1.3.6.1.2.1.2.2 i 300"

Изменено пользователем pronix

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Можно еще альтернативы net-snmp попробовать - bsnmp например.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

AlKov

просто в старт-скрипт добавляете что-то типа такого

ip netns add SNMPD

Невезуха - Centos из коробки не поддерживает netns..

Да, у меня недефолтное ядро.

изкоробки к сожалению не работает.

Но 3.17 пока полет стабильный.

Я добавлял в namespace veth а не физический интерфейс но сути это конечно же не меняет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Столкнулся с подобной проблемой. Как нибудь решилось? Дело в том, что на сервере пачка виланов порядка 3000, но мне надо мониторить bond, так что вариант отключением мониторинга сетевых интерфейсов не подходит.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.