AlKov Posted November 4, 2014 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-интерфейсы. Вопрос банальный - что делать? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
mr.Scamp Posted November 4, 2014 Можно попробовать отключить Data query "Interface statistics" в профиле кактуса для этого хоста. Это отключит перечисление интерфейсов при каждом обращении поллера. Не помешает даже, если ведется статистика интерфейсов, существующие графики останутся, а для создания новых нужно будет временно заново добаить этот data query/ Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
AlKov Posted November 4, 2014 Можно попробовать отключить Data query "Interface statistics" в профиле кактуса для этого хоста. Отключен уже давно, т.к. не требуется. Результат нулевой.. Вот как бы отключить в самом snmpd создание таблиц интерфейсов, ну или ограничить хотя бы только ethernet интерфейсами. P.S. Есть ещё предположение, что дело не только в кол-ве интерфейсов, но вот в чём именно?? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
s.lobanov Posted November 4, 2014 при запуске snmpd можно указать список только необходимых мибов. man snmpd Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
AlKov Posted November 4, 2014 при запуске 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" не помогает.. Всё равно загрузка проца не падает.. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
morfair Posted November 5, 2014 У меня тоже самое было на серверах доступа (NAS'ах), где коммутировались PPP-сессии абонентов. Статистику с них для балансировщика хотел забирать от snmpd, а тот так же чудил и грузил проц. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
AlKov Posted November 5, 2014 У меня тоже самое было на серверах доступа (NAS'ах), где коммутировались PPP-сессии абонентов. Статистику с них для балансировщика хотел забирать от snmpd, а тот так же чудил и грузил проц. И? Решили проблему, или с тем и живёте? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
alexmern Posted November 10, 2014 Мне такое помогло: /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 Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
AlKov Posted November 11, 2014 Мне такое помогло: /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" нету, не думаю, что он тут "при делах".. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
terrible Posted November 19, 2014 В snmpd.conf у вас какой указан sysservices ? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
AlKov Posted November 19, 2014 В snmpd.conf у вас какой указан sysservices ? Не указан вообще, закомментирована строка. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
sirmax Posted December 2, 2014 Мне ничего из описанного в этой теме не помогло ( Еще какие то идеи есть? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
s.lobanov Posted December 2, 2014 Мне ничего из описанного в этой теме не помогло ( Еще какие то идеи есть? отказаться от snmpd в пользу агентов мониторинга(например у заббикса есть такая штука) Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
sirmax Posted December 2, 2014 Простое решение - поместить snmpd в namespace где нет многих интерфейсов и full view Мне - помогло. namespaces просто какая-то серебряная пуля ) Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
AlKov Posted December 5, 2014 Простое решение - поместить snmpd в namespace где нет многих интерфейсов и full view А поподробнее, как это осуществить, расскажите, пожалуйста. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
s.lobanov Posted December 5, 2014 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 Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
AlKov Posted December 6, 2014 AlKov просто в старт-скрипт добавляете что-то типа такого ip netns add SNMPD Невезуха - Centos из коробки не поддерживает netns.. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
tux Posted December 6, 2014 А мне помогло вот это собрал либу, сделал ld_preload для snmp и все... теперь отдается все кроме ppp интерфейсов. нагрузка на процессор упала да и snmp по таймауту не отваливается Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
pronix Posted December 8, 2014 (edited) Можно попробовать выкрутить повыше через snmpset "NET-SNMP-AGENT-MIB::nsCacheTimeout.1.3.6.1.2.1.2.2 i 300" Edited December 8, 2014 by pronix Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
alex_001 Posted December 8, 2014 Можно еще альтернативы net-snmp попробовать - bsnmp например. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
sirmax Posted December 8, 2014 AlKov просто в старт-скрипт добавляете что-то типа такого ip netns add SNMPD Невезуха - Centos из коробки не поддерживает netns.. Да, у меня недефолтное ядро. изкоробки к сожалению не работает. Но 3.17 пока полет стабильный. Я добавлял в namespace veth а не физический интерфейс но сути это конечно же не меняет. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Antares Posted November 11, 2015 Столкнулся с подобной проблемой. Как нибудь решилось? Дело в том, что на сервере пачка виланов порядка 3000, но мне надо мониторить bond, так что вариант отключением мониторинга сетевых интерфейсов не подходит. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...