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

snmpd + cacti не поднимается выше 1,1Gb

Несколько гиговых интерфейсов собраны в транк (бонд), наложены вланы.

Cacti снимает утилизацию с полученных интерфейсов (вланов).

На графиках - при утилизации выще 1,1Гб - появляются провалы.

Опрос из какти - раз в 5 минут.

 

Исследования показали, что счетчик интерфейса в самом линуксе - 32 разряда. SNMPD обновляет статистику у себя внутри раз в 30 секунд.

Т.е. 2^32*8/30/1024/1024 = 1 092 Мбит.

 

Пытались изменить время опроса линуксовых счетчиков самим SNMPD до 10 секунд

snmpset -v2c -c monitoring 192.168.25.19 1.3.6.1.4.1.8072.1.5.3.1.2.1.3.6.1.2.1.2.2 i 10

 

Результат не сильно изменился. Все те же провалы в графиках.

 

Куда копать?

Share this post


Link to post
Share on other sites

Я так понял из сообщения автора, что он их и снимает.. иначе он бы говорил на про 1.1 гб а про 120 мб ибо

 

Опрос из какти - раз в 5 минут.

и 32 битные счетчики дают не 1.1гбит совсем.

 

линукс 32 битный?

Share this post


Link to post
Share on other sites

Система - 32 бита.

Максимальное значение в RRDTool - очень большое.

Проблема на стороне SNMPD.

 

На типовой запрос 1.3.6.1.2.1.31.1.1.1.6.13 со стороны какти - из SNMPD приходят "обрезанные" данные.

# 64 bit counters:

# .1.3.6.1.2.1.31.1.1.1.6. Counter64 ifHCInOctets

Share this post


Link to post
Share on other sites

мне так показалось, при беглом ковырянии в коде, что 30 там прибито гвоздями...

Походу это именно Ваше число :/

 

agent/mibgroup/if-mib/ifTable/ifTable_interface.c: if_ctx->cache = netsnmp_cache_create(30, /* timeout in seconds */

Share this post


Link to post
Share on other sites

Система - 32 бита.

Максимальное значение в RRDTool - очень большое.

Проблема на стороне SNMPD.

 

На типовой запрос 1.3.6.1.2.1.31.1.1.1.6.13 со стороны какти - из SNMPD приходят "обрезанные" данные.

# 64 bit counters:

# .1.3.6.1.2.1.31.1.1.1.6. Counter64 ifHCInOctets

 

В 32ух битных системах с ifHCInOctets не получится снимать, там будет тоже самое, что показывает ifconfig

 

Можно считать через iptables и рисовать его счётчики. http://www.roth.lu/cacti-snmp-tut.htm

Share this post


Link to post
Share on other sites

тем не менее оно на 32-х битных системах показывает больше

 

IF-MIB::ifHCInOctets.1 = Counter64: 8785502357967

Это чутка больше, чем влезает в 32 бита

Это 32битная фря... Если бы 64 битные счетчики тупо транслировли счетчики 32 битного ядра, то мы бы имели тоже ограничение ~120 мегабит на 5 минутном съеме. А его нет.

 

 

но у меня нет 32-х битных систем способных (имеющих интерфейсы) отдать больше гигабита. на 64 битных системах я проблем не заметил.

Share this post


Link to post
Share on other sites

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

 

Судя по всему и здесь у всех все ровно.

 

Видимо выхода 2: либо снимать сторонним способом (не через снмпд), либо ставить 64 ((((

 

Хотя можно пропатчить снмпд до 15 секунд и забыть ;)

 

Пс. Снмпд раз в 30 секунд забирает цифру с интерфейса (32 битную) и складирует ее у себя в 64 бинтом счетчике. Подсчет в результате которого таким способом все упирается в 1,1 я чуть выше писал.

Edited by lacost

Share this post


Link to post
Share on other sites

А пересобрать поменяв вышеуказанную 30 на 10 не получится ?

 

Еще вариант, там есть флаги, позволяющие звать обновление на каждый запрос, но разбираться лень, выставлены ли они в этом месте. попробуйте позвать скриптом snmpget на данный параметр раз в 5 секунд. just проверить.

Share this post


Link to post
Share on other sites

Ничего не надо там менять. Достаточно при сборке указать:

--enable-mfd-rewrites

 

Пруф (доп. чтиво):

*5.4*
...
  Solaris, FreeBSD, OpenBSD:
     - Experimental support for 64bit interface counters (ifXTable). Enable
       via '--with-mib-modules=if-mib --enable-mfd-rewrites'.

...

*5.2*
...
  Linux:
    - new experimental tables/rewrites for Linux, including:
          ifTable, ifXTable, inetCidrRouteTable, ipCidrRouteTable,
          ipAddressTable, ipSystemStatsTable, ipNetToPhysicalTable.
      - Enable these talbles by specifying --enable-mfd-rewrites to configure.

Share this post


Link to post
Share on other sites

без этой опции вообще нет счетчиков

Есть ;) Но 32-х битные.

 

 

Интересно, в кактусе у ТС какие графики рисуются?

 

TqGrAqKN.jpg

 

Правда при простом "In/Out Bits" не было бы гигабита.

Share this post


Link to post
Share on other sites

без этой опции вообще нет счетчиков

Есть ;) Но 32-х битные.

 

 

Эээ.. знаете, был у меня какойто 3ком, у которого были 64 счетчики... только отдавали они 0 ВСЕГДА. Я бы считал что их нет, если там чтото отличное от 64 битных счетчиков пролезших через интерфейс байтов :)

Share this post


Link to post
Share on other sites

Я уже писал, что пытались сказать snmp чтобы забирал с интерфейса данные раз в 10 секунд

snmpset -v2c -c monitoring 192.168.25.19 1.3.6.1.4.1.8072.1.5.3.1.2.1.3.6.1.2.1.2.2 i 10

 

Видим что значение изменилось, но данные по трафу - не верные. Забирает так же раз в 30 секунд.

 

Какти здесь ни при чем. Неверная цифра идет уже с snmpd.

 

Пересобирать пока не пробовали.

Share this post


Link to post
Share on other sites

пытались сказать snmp чтобы забирал с интерфейса данные раз в 10 секунд

Период снятия инфы на размерность счетчиков не влияет.

Попробуйте пересобрать и пособирать данные в штатном режиме - посмотрим чего получится.

Share this post


Link to post
Share on other sites

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.