Ad Widget

Collapse

Проблема производительности.

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • d_pilot
    Junior Member
    • Jun 2008
    • 11

    #1

    Проблема производительности.

    Имеется следующая конфигурация:
    FreeBSD 8.0
    Zabbix 1.8
    PostgeSQL 8.4
    Объём базы ~ 18Gb

    При этом имеются большие проблемы с производительностью.
    Всё установлено в базовой конфигурации.

    Железо:
    5 дисков в RAID0
    3GB RAM
    CORE2QUAD 2,2 GHz

    Пиштся порядка 200 значений в секунду. При этом нагрузка на диски 2000-5000 rw iops и 7 едениц на проц. Как можно оптимизировать подобную систему?
  • sHaggY_caT
    Member
    • Mar 2010
    • 48

    #2
    Originally posted by d_pilot
    Имеется следующая конфигурация:
    FreeBSD 8.0
    Zabbix 1.8
    PostgeSQL 8.4
    Объём базы ~ 18Gb

    При этом имеются большие проблемы с производительностью.
    Всё установлено в базовой конфигурации.

    Железо:
    5 дисков в RAID0
    3GB RAM
    CORE2QUAD 2,2 GHz

    Пиштся порядка 200 значений в секунду. При этом нагрузка на диски 2000-5000 rw iops и 7 едениц на проц. Как можно оптимизировать подобную систему?
    gstripe с пятью дисками?? Вы жжете! Не боитесь, что Ваша база, хм, в любую секунду *того*?
    Если идти по пути наращивания дисковой производительности, уж лучше, по-моему, десятый raid из маленьких флэш дисков, они не так уж дорого и стоят (я о серверных SLC, конечно, а не о нетбучных флэшах), и 5000 iops для такого массива реально, а массива gstripe + gmirror из 4 36Gb должно Вам хватить, и будет избыточность, в отличае от сидения сейчас на пороховой бочке

    Когда мы столкнулись с тормозами, я уменьшила для не очень интересных итемов время проверки, помогло очень хорошо. У Вас же стандартные шаблоны для фряхи? Вычистите, там половина ненужного в реальной жизни.
    Last edited by sHaggY_caT; 17-03-2010, 23:33.

    Comment

    • Hober
      Senior Member
      • Dec 2008
      • 109

      #3
      Originally posted by d_pilot
      ð˜ð¼ðµðµñ‚ññ ñð»ðµð´ñƒñŽñ‰ð°ñ ðºð¾ð½ñ„ð¸ð³ñƒñ€ð°ñ†ð¸ñ:
      Freebsd 8.0
      zabbix 1.8
      postgesql 8.4
      ðžð±ñŠñ‘ð¼ ð±ð°ð·ñ‹ ~ 18gb

      ðŸñ€ð¸ ññ‚ð¾ð¼ ð¸ð¼ðµñŽñ‚ññ ð±ð¾ð»ñŒñˆð¸ðµ ð¿ñ€ð¾ð±ð»ðµð¼ñ‹ ñ ð¿ñ€ð¾ð¸ð·ð²ð¾ð´ð¸ñ‚ðµð»ñŒð½ð¾ññ‚ñŒñŽ.
      ð’ññ‘ ñƒññ‚ð°ð½ð¾ð²ð»ðµð½ð¾ ð² ð±ð°ð·ð¾ð²ð¾ð¹ ðºð¾ð½ñ„ð¸ð³ñƒñ€ð°ñ†ð¸ð¸.

      ð–ðµð»ðµð·ð¾:
      5 ð´ð¸ñðºð¾ð² ð² raid0
      3gb ram
      core2quad 2,2 ghz

      ðŸð¸ñˆñ‚ññ ð¿ð¾ñ€ñð´ðºð° 200 ð·ð½ð°ñ‡ðµð½ð¸ð¹ ð² ñðµðºñƒð½ð´ñƒ. ðŸñ€ð¸ ññ‚ð¾ð¼ ð½ð°ð³ñ€ñƒð·ðºð° ð½ð° ð´ð¸ñðºð¸ 2000-5000 rw iops ð¸ 7 ðµð´ðµð½ð¸ñ† ð½ð° ð¿ñ€ð¾ñ†. ðšð°ðº ð¼ð¾ð¶ð½ð¾ ð¾ð¿ñ‚ð¸ð¼ð¸ð·ð¸ñ€ð¾ð²ð°ñ‚ñŒ ð¿ð¾ð´ð¾ð±ð½ñƒñŽ ñð¸ññ‚ðµð¼ñƒ?
      ðžð³ð¾, ð° ñðºð¾ð»ñŒðºð¾ ñð»ðµð¼ðµð½ñ‚ð¾ð² ð´ð°ð½ð½ñ‹ñ…?
      Zabbix Servers - 1
      Zabbix Proxy - 145
      Monitored Servers: ~ 1400

      Comment

      • costas
        Senior Member
        • Aug 2009
        • 201

        #4
        Originally posted by hober
        ðžð³ð¾, ð° ñðºð¾ð»ñŒðºð¾ ñð»ðµð¼ðµð½ñ‚ð¾ð² ð´ð°ð½ð½ñ‹ñ…?
        Честно перебрал всю кириллицу так и не смог рашифровать.
        CentOS-5.5 i386, Zabbix 1.8.4 (stable), MySQL 5.0.92, PHP 5.2.17 (cli)

        ...эта проверка бесполезная, вредная, и она зло.

        Comment

        • costas
          Senior Member
          • Aug 2009
          • 201

          #5
          Originally posted by d_pilot
          Имеется следующая конфигурация:
          Freebsd 8.0
          zabbix 1.8
          postgesql 8.4
          Объём базы ~ 18gb

          При этом имеются большие проблемы с производительностью.
          Всё установлено в базовой конфигурации.

          Железо:
          5 дисков в raid0
          3gb ram
          core2quad 2,2 ghz

          Пиштся порядка 200 значений в секунду. При этом нагрузка на диски 2000-5000 rw iops и 7 едениц на проц. Как можно оптимизировать подобную систему?
          Что у Вас за контроллер под диски? Ёмкость дисков? (как уже озвучили raid0 из пяти дисков не годиться, оптимально 4-ре диска в raid10+1 на "счастье"... хотябы...)

          18gb база за какой период?
          Количество хостов, итемов, триггеров?

          Ну и потом уже всё остальное...
          CentOS-5.5 i386, Zabbix 1.8.4 (stable), MySQL 5.0.92, PHP 5.2.17 (cli)

          ...эта проверка бесполезная, вредная, и она зло.

          Comment

          • sHaggY_caT
            Member
            • Mar 2010
            • 48

            #6
            Originally posted by costas
            Что у Вас за контроллер под диски? Ёмкость дисков? (как уже озвучили raid0 из пяти дисков не годиться, оптимально 4-ре диска в raid10+1 на "счастье"... хотябы...).
            Десятка из четырех обычных шпинделей, даже с SAS и самым лучшим контроллером с большим кэшем с батарейкой не выдаст больше 800iops

            Но проблема автора, имхо, в том, что как он сам сказал, у него "все по-умолчанию", даже постгресс не тюненный, наверное.

            Наверное, и шаблон FreeBSD тоже дефольтный...

            2 Hober, так же не поняла, в какой кодировке Вы написали...

            Comment

            • Hober
              Senior Member
              • Dec 2008
              • 109

              #7
              Originally posted by shaggy_cat
              Десятка из четырех обычных шпинделей, даже с sas и самым лучшим контроллером с большим кэшем с батарейкой не выдаст больше 800iops

              Но проблема автора, имхо, в том, что как он сам сказал, у него "все по-умолчанию", даже постгресс не тюненный, наверное.

              Наверное, и шаблон freebsd тоже дефольтный...

              2 hober, так же не поняла, в какой кодировке Вы написали...
              да чет браузер глючит.
              Я спрашивал сколько итемов.
              Zabbix Servers - 1
              Zabbix Proxy - 145
              Monitored Servers: ~ 1400

              Comment

              • d_pilot
                Junior Member
                • Jun 2008
                • 11

                #8
                Добрый день.
                Откидывание наиболее не важных айтемов - первый тюнинг, который был сделан. Надёжность RAID0 выходит за рамки данного обсуждения, так что прошу не заострять на этом внимания.
                Контроллер HP MSA1500

                ZABBIX:
                Number of hosts 280
                Number of items 15106
                Number of triggers 9162

                postgresql.conf:
                shared_buffers = 512MB
                work_mem = 128MB
                maintenance_work_mem = 512MB
                max_stack_depth = 48MB
                max_fsm_pages = 2000000
                max_fsm_relations = 2000
                bgwriter_delay = 200ms
                bgwriter_lru_percent = 1.0
                bgwriter_lru_maxpages = 5
                bgwriter_all_percent = 0.333
                bgwriter_all_maxpages = 5
                fsync = off
                checkpoint_segments = 10
                checkpoint_timeout = 10min
                random_page_cost = 4.0
                effective_cache_size = 1GB
                autovacuum_naptime = 30min
                autovacuum_vacuum_threshold = 5000
                autovacuum_analyze_threshold = 2500
                autovacuum_vacuum_scale_factor = 0.2
                autovacuum_analyze_scale_factor = 0.1
                autovacuum_freeze_max_age = 200000000
                Last edited by d_pilot; 19-03-2010, 11:52.

                Comment

                • sHaggY_caT
                  Member
                  • Mar 2010
                  • 48

                  #9
                  Originally posted by d_pilot
                  Добрый день.
                  Откидывание наиболее не важных айтемов - первый тюнинг, который был сделан.
                  Попробуйте так же увеличить интервал проверок. Не знаю, что именно Вы проверяете, но, например, как мне кажется, LA нужно проверять не с avg1, а с avg5 (мало ли от чего ненадолго скакнула процессорная очередь?), smart-статус по дискам, например, и раз в двадцать минут, имхо, нормально чекать, ну и т д.

                  У нас 15 хостов(конечно, маштаб гораздо меньший, чем у Вас) мониторятся на Zabbix-сервером в OpenVZ контейнере, и итемов почти 40 тысяч, но так как многие проверки проводятся очень редко, все живет вполне хорошо, при этом контейнер не сказать, что бы очень мощный: 1526 памяти, cpulimit стоит в 55%, и достаточно мало cpuunits, используется MySQL innodb, а железо на хосте совсем никакое: P4, два SATA диска в софт-зеркале, при этом на железке живет еще несколько сервисов, и она, тьфу-тьфу, чувствует себя хорошо.

                  Но все было очень плохо с дефольтными интервалами проверок Сейчас большую часть я выставила в чек раз в три-пять минут
                  Last edited by sHaggY_caT; 19-03-2010, 15:18.

                  Comment

                  • d_pilot
                    Junior Member
                    • Jun 2008
                    • 11

                    #10
                    Например smartd у меня проверяется вообще 3 раза в сутки. Чаще на большенстве сервреров нет смысла. Основную нагрузку даёт мониторинг сетевого обарудования. Тут я не особо силён в том что необходимо а что нет. Может кто расскажет как у него мониторится сеть?

                    Comment

                    • Hober
                      Senior Member
                      • Dec 2008
                      • 109

                      #11
                      Originally posted by d_pilot
                      Äîáðûé äåíü.
                      Îòêèäûâàíèå íàèáîëåå íå âàæíûõ àéòåìîâ - ïåðâûé òþíèíã, êîòîðûé áûë ñäåëàí. Íà䏿íîñòü RAID0 âûõîäèò çà ðàìêè äàííîãî îáñóæäåíèÿ, òàê ÷òî ïðîøó íå çàîñòðÿòü íà ýòîì âíèìàíèÿ.
                      Êîíòðîëëåð HP MSA1500

                      ZABBIX:
                      Number of hosts 280
                      Number of items 15106
                      Number of triggers 9162

                      postgresql.conf:
                      shared_buffers = 512MB
                      work_mem = 128MB
                      maintenance_work_mem = 512MB
                      max_stack_depth = 48MB
                      max_fsm_pages = 2000000
                      max_fsm_relations = 2000
                      bgwriter_delay = 200ms
                      bgwriter_lru_percent = 1.0
                      bgwriter_lru_maxpages = 5
                      bgwriter_all_percent = 0.333
                      bgwriter_all_maxpages = 5
                      fsync = off
                      checkpoint_segments = 10
                      checkpoint_timeout = 10min
                      random_page_cost = 4.0
                      effective_cache_size = 1GB
                      autovacuum_naptime = 30min
                      autovacuum_vacuum_threshold = 5000
                      autovacuum_analyze_threshold = 2500
                      autovacuum_vacuum_scale_factor = 0.2
                      autovacuum_analyze_scale_factor = 0.1
                      autovacuum_freeze_max_age = 200000000
                      Íàñ÷åò ïîñòðãåñà íå ïîäñêàæó, íî íà ìóñêóëå, ïðè:

                      Êîëè÷åñòâî óçëîâ ñåòè 817
                      Êîëè÷åñòâî ýëåìåíòîâ äàííûõ 17447

                      [root@zabbix /]# iostat -xmd 1
                      Device: rrqm/s wrqm/s r/s w/s rMB/s wMB/s avgrq-sz avgqu-sz await svctm %util
                      sda 0,02 150,68 0,69 68,41 0,02 3,47 103,40 0,62 8,95 2,18 15,04
                      sda1 0,00 3,71 0,01 1,03 0,00 0,02 36,83 0,01 11,47 2,14 0,22
                      sda2 0,00 0,00 0,00 0,00 0,00 0,00 50,38 0,00 3,05 3,05 0,00
                      sda3 0,02 146,97 0,68 67,38 0,02 3,45 104,42 0,61 8,91 2,19 14,90

                      Êàê íàïèñàëè âûøå, óìåíüøàéòå âðåìÿ îïðîñà ( î÷åíü ñèëüíî ñíèæàåò íàãðóçêó íà ÁÄ ).
                      Zabbix Servers - 1
                      Zabbix Proxy - 145
                      Monitored Servers: ~ 1400

                      Comment

                      • Hober
                        Senior Member
                        • Dec 2008
                        • 109

                        #12
                        Originally posted by d_pilot
                        íàïðèìåð smartd ó ìåíÿ ïðîâåðÿåòñÿ âîîáùå 3 ðàçà â ñóòêè. ×àùå íà áîëüøåíñòâå ñåðâðåðîâ íåò ñìûñëà. îñíîâíóþ íàãðóçêó äà¸ò ìîíèòîðèíã ñåòåâîãî îáàðóäîâàíèÿ. òóò ÿ íå îñîáî ñèë¸í â òîì ÷òî íåîáõîäèìî à ÷òî íåò. ìîæåò êòî ðàññêàæåò êàê ó íåãî ìîíèòîðèòñÿ ñåòü?
                        à âîò ñìàðò ÿ áû ïî÷àùå ïðîâåðÿë, îñîáåííî òåìïåðàòóðó
                        Zabbix Servers - 1
                        Zabbix Proxy - 145
                        Monitored Servers: ~ 1400

                        Comment

                        • sHaggY_caT
                          Member
                          • Mar 2010
                          • 48

                          #13
                          Originally posted by Hober
                          à âîò ñìàðò ÿ áû ïî÷àùå ïðîâåðÿë, îñîáåííî òåìïåðàòóðó
                          Если что, Ваше сообщение (это я для остальных) в cp1251

                          А раз во сколько Вы чекаете smart? и что проверяете? Я проверяю(на Linux-ксах без аппаратных контроллеров):

                          cat /etc/zabbix/zabbix-agent.d/smart.conf
                          UserParameter=smart.state[*],sudo /usr/sbin/smartctl -H /dev/$1 | grep "test result" | cut -d: -f2 | cut -d\ -f2
                          UserParameter=smart.realloccounti[*],sudo /var/lib/zabbix/rc.smart-realloccounti.sh $1
                          UserParameter=smart.temperature[*],sudo /var/lib/zabbix/rc.smart-temperature.sh $1
                          UserParameter=smart.hddinfo[*],sudo /sbin/hdparm -I /dev/$1

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

                          В среднем все раз в двадцать минут
                          Last edited by sHaggY_caT; 19-03-2010, 15:36.

                          Comment

                          • costas
                            Senior Member
                            • Aug 2009
                            • 201

                            #14
                            Originally posted by d_pilot
                            Например smartd у меня проверяется вообще 3 раза в сутки. Чаще на большенстве сервреров нет смысла. Основную нагрузку даёт мониторинг сетевого обарудования. Тут я не особо силён в том что необходимо а что нет. Может кто расскажет как у него мониторится сеть?
                            Под сетевое оборудование у меня стоит отдельный сервер, то есть сейчас стоит, раньше всё крутилось на одном. Вы должны чётко обозначить что Вы хотите от сетевого оборудования в плане мониторинга. У меня например первым критерием являлось мониторинг загрузки портов (пропускная), раз в пять минут снимается дельта и строятся графики соответственно по портам. Доступность оборудования в том числе и портов + характеристики не мониторятся, сначала ставил потом удалил ибо за 2 года не было проблем - опять же зависит от условий проживания и самого оборудования.

                            Если взять в расчёт самое необходимое то это будет:
                            Доступность:
                            - доступность свича/роутера
                            - доступность порта (статус)
                            Траффик (пропускная):
                            - дельта исходящего на порту
                            - дельта входящего на порту
                            ..остальное всё лишнее (если у вас конечно не дёргают настройки портов кажный день по 8 раз)

                            ну и отдельная тема триггеры, здесь мелькали темы про то как научить zabbix ловить трапы и тем самым снизить нагрузку исключая опрос устройств.
                            CentOS-5.5 i386, Zabbix 1.8.4 (stable), MySQL 5.0.92, PHP 5.2.17 (cli)

                            ...эта проверка бесполезная, вредная, и она зло.

                            Comment

                            • d_pilot
                              Junior Member
                              • Jun 2008
                              • 11

                              #15
                              costas

                              Íå ñêàæèòå êàêèå íàñòðîéêè PostgeSQL ó âàñ? Ïîä êàêóþ ñèñòåìó?
                              Ïðîñòî íàãðóçêà, êîòîðóþ ãåíåðèò çàááèêñ êàæåòñÿ ìíå íå ïðàâäîâîäîáíîé.

                              Comment

                              Working...