Ad Widget

Collapse

И снова о производительности.

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Phoen
    Member
    • Aug 2014
    • 60

    #1

    И снова о производительности.

    Собственно работа осуществляется через proxy.

    Статистика сервера:


    Очередь:






    Этого результата я добился после того как поигрался в конфигах core и proxy с количеством поллеров и конфигом my.cnf, количество синков с базой тоже пробовал менять - ничего не изменилось. Max connections в базе выставил в 500.

    HW прокси:
    Виртуалка с 4 ядрами, 8гб озу.

    Конфиги базы прокси и самого прокси:



    Может у кого-то был опыт оптимизации заббикс под такие объемы данных? Ни в процессор, ни в оперативку, ни в диск заббикс не утыкается. Однако серьезно снизить очередь у меня так и не вышло.
    Last edited by Phoen; 13-11-2014, 11:24.
  • aib
    Senior Member
    • Jan 2014
    • 1615

    #2
    1) Какую версию Zabbix вы используете? В версии 2.2.*(не помню точно субверсию) были проблемы с подсчетом количества элементов в очереди.
    2) Существуют ли проверки с периодичностью более 10 минут, осуществялемые через прокси? У меня в таком случае возникают очереди на сервере, т.к. прокси не отдает данные чаще, чем "период опроса"
    Sincerely yours,
    Aleksey

    Comment

    • Phoen
      Member
      • Aug 2014
      • 60

      #3
      1) Версия 2.2.1, на глюк очереди не похоже.
      2) Раскидал их по 5-7 минут, думаю дело не в этом.

      Comment

      • Phoen
        Member
        • Aug 2014
        • 60

        #4
        Сегодня попробую обновиться до 2.2.7, посмотрим что получится.

        И ещё два вопроса:
        1) Есть какие-то бест практикс по настройке производительности заббикс прокси (прокси в активном режиме, агенты тоже)?
        2) Реальна ли схема с использованием паралельно 2ух заббикс серверов(core)? Или будут проблемы с базой?

        Comment

        • sersad
          Senior Member
          • May 2009
          • 518

          #5
          У вас какие то "детские" 80 значений в секунду.
          Это легко делается без прокси на одном сервере.

          Comment

          • sersad
            Senior Member
            • May 2009
            • 518

            #6
            Рекомендую ознакомится со следующим

            Comment

            • Phoen
              Member
              • Aug 2014
              • 60

              #7
              1. Включено минимальное количество проверок.
              2. Планируется гораздо большее кол-во хостов и проверок
              3. Так если "детское" откуда очередь?

              Comment

              • sersad
                Senior Member
                • May 2009
                • 518

                #8
                вы почитали ошибки?
                В версии 2.2.1 есть ошибка с подсчетом очереди. Превым делом обновитесь на новую версию
                Далее если у вас SNMP то выключите BULK

                Посмотрите что в логах на прокси и на сервере
                если там SNMP agent item on host failed: first network error, wait
                то


                src/zabbix_server/poller/checks_snmp.c

                session.retries = 1; /* number of retries after failed attempt */
                /* (net-snmp default = 5) */

                И пересоберите забикс и прокси
                Last edited by sersad; 14-11-2014, 10:36.

                Comment

                • sersad
                  Senior Member
                  • May 2009
                  • 518

                  #9
                  посмотрел конфиг прокси
                  включите
                  DataSenderFrequency=1
                  ConfigFrequency=60
                  StartPollersUnreachable=20
                  Timeout=15

                  Comment

                  • Phoen
                    Member
                    • Aug 2014
                    • 60

                    #10
                    Originally posted by sersad
                    вы почитали ошибки?
                    В версии 2.2.1 есть ошибка с подсчетом очереди. Превым делом обновитесь на новую версию
                    Далее если у вас SNMP то выключите BULK

                    Посмотрите что в логах на прокси и на сервере
                    если там SNMP agent item on host failed: first network error, wait
                    то


                    src/zabbix_server/poller/checks_snmp.c

                    session.retries = 1; /* number of retries after failed attempt */
                    /* (net-snmp default = 5) */

                    И пересоберите забикс и прокси
                    Нашел ещё и такое вот:


                    Я так понимаю в 2.2.7 ещё не пофикшено?

                    Comment

                    • sersad
                      Senior Member
                      • May 2009
                      • 518

                      #11
                      да, исправление только в rc2.2.8

                      Comment

                      • Phoen
                        Member
                        • Aug 2014
                        • 60

                        #12
                        Собственно в ходе дальнейших копаний было выявлено что очередь скапливается на ядре, а не на прокси. При этом в кэше очереди на запись в бд нет. Аппаратно тоже вроде-бы ни во что не упирается. На дашборде

                        Code:
                        Количество узлов сети (под наблюдением/без наблюдения/шаблоны)	17320	17280 / 0 / 40
                        Количество элементов данных (активных/деактивированых/не поддерживаются)	814759	167678 / 645904 / 1177
                        Количество триггеров (активированных/деактивированных) [проблема/ок]	95660	95659 / 1 [3183 / 92476]
                        Количество пользователей (в сети)	8	1
                        Требуемое быстродействие сервера, новые значения в секунду	1938.4
                        -

                        Т.е. хостов много, проверок нет. Вот графики core за прошедшие 4 дня (там где обрыв - ночью ковырял базу).





                        Отсюда вопрос, как заставить zabbix server обрабатывать больше информации в единицу времени?

                        Comment

                        • sersad
                          Senior Member
                          • May 2009
                          • 518

                          #13
                          Phoen в логах сервера есть что либо аномальное?

                          Comment

                          • Phoen
                            Member
                            • Aug 2014
                            • 60

                            #14
                            Originally posted by sersad
                            Phoen в логах сервера есть что либо аномальное?
                            Включил логирование медленных запросов:

                            Code:
                            29248:20141203:131827.594 slow query: 2.212916 sec, "select t.itemid,t.type,t.snmp_community,t.snmp_oid,t.hostid,t.key_,t.delay,t.status,t.value_type,t.trapper_hosts,t.snmpv3_securityname,t.snmpv3_securitylevel,t.snmpv3_authpassphrase,t.snmpv3_privpassphrase,t.formula,t.logtimefmt,t.delay_flex,t.params,t.ipmi_sensor,t.data_type,t.authtype,t.username,t.password,t.publickey,t.privatekey,t.flags,t.filter,t.interfaceid,t.port,t.snmpv3_authprotocol,t.snmpv3_privprotocol,t.snmpv3_contextname from items t,hosts r where t.hostid=r.hostid and r.proxy_hostid=10106 and r.status in (0,1) and t.type in (0,7,1,4,6,12,2,3,9,10,11,13,14,16,17,5) order by t.itemid"
                             29248:20141203:131828.054 sending configuration data to proxy "zproxy1.domain.lan", datalen 40404939
                             29242:20141203:131830.841 slow query: 2.484148 sec, "select t.itemid,t.type,t.snmp_community,t.snmp_oid,t.hostid,t.key_,t.delay,t.status,t.value_type,t.trapper_hosts,t.snmpv3_securityname,t.snmpv3_securitylevel,t.snmpv3_authpassphrase,t.snmpv3_privpassphrase,t.formula,t.logtimefmt,t.delay_flex,t.params,t.ipmi_sensor,t.data_type,t.authtype,t.username,t.password,t.publickey,t.privatekey,t.flags,t.filter,t.interfaceid,t.port,t.snmpv3_authprotocol,t.snmpv3_privprotocol,t.snmpv3_contextname from items t,hosts r where t.hostid=r.hostid and r.proxy_hostid=10107 and r.status in (0,1) and t.type in (0,7,1,4,6,12,2,3,9,10,11,13,14,16,17,5) order by t.itemid"
                             29242:20141203:131831.326 sending configuration data to proxy "zproxy2.domain.lan", datalen 43666178
                             29215:20141203:131852.643 slow query: 4.781766 sec, "select i.itemid,i.hostid,i.status,i.type,i.data_type,i.value_type,i.key_,i.snmp_community,i.snmp_oid,i.port,i.snmpv3_securityname,i.snmpv3_securitylevel,i.snmpv3_authpassphrase,i.snmpv3_privpassphrase,i.ipmi_sensor,i.delay,i.delay_flex,i.trapper_hosts,i.logtimefmt,i.params,i.state,i.authtype,i.username,i.password,i.publickey,i.privatekey,i.flags,i.interfaceid,i.snmpv3_authprotocol,i.snmpv3_privprotocol,i.snmpv3_contextname,i.lastlogsize,i.mtime,i.delta,i.multiplier,i.formula,i.history,i.trends,i.inventory_link,i.valuemapid,i.units,i.error from items i,hosts h where i.hostid=h.hostid and h.status in (0,1) and i.flags<>2"
                             29215:20141203:131857.897 slow query: 5.253759 sec, "select distinct t.triggerid,t.description,t.expression,t.error,t.priority,t.type,t.value,t.state,t.lastchange,t.status from hosts h,items i,functions f,triggers t where h.hostid=i.hostid and i.itemid=f.itemid and f.triggerid=t.triggerid and h.status in (0,1) and t.flags<>2"
                             29215:20141203:131900.532 slow query: 2.620114 sec, "select i.itemid,f.functionid,f.function,f.parameter,t.triggerid from hosts h,items i,functions f,triggers t where h.hostid=i.hostid and i.itemid=f.itemid and f.triggerid=t.triggerid and h.status in (0,1) and t.flags<>2"
                             29240:20141203:131913.020 slow query: 2.347527 sec, "select t.itemid,t.type,t.snmp_community,t.snmp_oid,t.hostid,t.key_,t.delay,t.status,t.value_type,t.trapper_hosts,t.snmpv3_securityname,t.snmpv3_securitylevel,t.snmpv3_authpassphrase,t.snmpv3_privpassphrase,t.formula,t.logtimefmt,t.delay_flex,t.params,t.ipmi_sensor,t.data_type,t.authtype,t.username,t.password,t.publickey,t.privatekey,t.flags,t.filter,t.interfaceid,t.port,t.snmpv3_authprotocol,t.snmpv3_privprotocol,t.snmpv3_contextname from items t,hosts r where t.hostid=r.hostid and r.proxy_hostid=10106 and r.status in (0,1) and t.type in (0,7,1,4,6,12,2,3,9,10,11,13,14,16,17,5) order by t.itemid"
                             29240:20141203:131913.554 sending configuration data to proxy "zproxy1.domain.lan", datalen 40404939
                             29332:20141203:131952.773 item "04050366_02:vfs.fs.size[F:,free]" became supported
                             29332:20141203:131952.799 item "04050366_02:vfs.fs.size[F:,pfree]" became supported
                             29332:20141203:131952.799 item "04050366_02:vfs.fs.size[F:,total]" became supported
                             29241:20141203:131953.090 slow query: 2.613520 sec, "select t.itemid,t.type,t.snmp_community,t.snmp_oid,t.hostid,t.key_,t.delay,t.status,t.value_type,t.trapper_hosts,t.snmpv3_securityname,t.snmpv3_securitylevel,t.snmpv3_authpassphrase,t.snmpv3_privpassphrase,t.formula,t.logtimefmt,t.delay_flex,t.params,t.ipmi_sensor,t.data_type,t.authtype,t.username,t.password,t.publickey,t.privatekey,t.flags,t.filter,t.interfaceid,t.port,t.snmpv3_authprotocol,t.snmpv3_privprotocol,t.snmpv3_contextname from items t,hosts r where t.hostid=r.hostid and r.proxy_hostid=10108 and r.status in (0,1) and t.type in (0,7,1,4,6,12,2,3,9,10,11,13,14,16,17,5) order by t.itemid"
                             29241:20141203:131953.609 sending configuration data to proxy "zproxy3.domain.lan", datalen 45956240
                             29345:20141203:131954.227 item "04050366_02:vfs.fs.size[F:,used]" became supported
                            Я так понимаю эти селекты дергаются при построении разного рода комплексных экранов и напрямую на производительность сервера влиять не должны.

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

                            Comment

                            • sersad
                              Senior Member
                              • May 2009
                              • 518

                              #15
                              а база на том же сервере что и zabbix?

                              Comment

                              Working...