Ad Widget

Collapse

Заббикс стал тормозить

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • V_V
    Junior Member
    • Nov 2017
    • 5

    #1

    Заббикс стал тормозить

    Добрый день!

    последние 2 дня заббикс стал сильно тормозить
    на графе загрузки внутренних процессов (zabbix internal process busy %) значения возросли на порядок:
    - Zabbix busy configuration syncer processes, in% - c 0-1% до 15-20%
    - Zabbix busy history syncer processes, in% - с 5-10% до 50-60%
    - Zabbix busy housekeepr processes, in% - с регулярных пиков раз в полтора часа до 100% до постоянной загрузки в 100%.

    скрин: https://ibb.co/gwMNnb

    так же дисках гипервизора, где лежит виртальная машина заббикса появилась постоянная очередь на диске в 20-25 единиц.

    перезагрузка службы заббикса решает проблему где-то на 1 час. потом симптомы возвращаются.

    просьба уточнить куда копать
  • Kos
    Senior Member
    Zabbix Certified SpecialistZabbix Certified Professional
    • Aug 2015
    • 3404

    #2
    Могу предположить, что тормозит процесс housekeeper, который по умолчанию запускается каждый час, а первый раз стартует как раз через час после запуска сервера.
    Видимо, у вас поднакопилось устаревших данных, которые он должен удалить; и эта работа сразу же сказывается и на остальных процессах, которые обращаются к базе (history syncer, configuration syncer).
    Смотреть, в первую очередь, на настройки Вашего сервера баз данных - обычно, рекомендуется его подстраивать сразу после установки Zabbix-а. Выделенная ему память там, пулы и т.д.

    Ну и замечание не совсем по делу: текущая версия линейки 3.0 - это 3.0.12, а у Вас на скриншоте видна 3.0.5. Тоже не мешало бы обновить при случае.

    Comment

    • V_V
      Junior Member
      • Nov 2017
      • 5

      #3
      Originally posted by Kos
      Могу предположить, что тормозит процесс housekeeper, который по умолчанию запускается каждый час, а первый раз стартует как раз через час после запуска сервера.
      Видимо, у вас поднакопилось устаревших данных, которые он должен удалить; и эта работа сразу же сказывается и на остальных процессах, которые обращаются к базе (history syncer, configuration syncer).
      те проблема в том, что база уже не пустая (заббикс инсталлировали в ноябре 2016)?
      Originally posted by Kos
      Смотреть, в первую очередь, на настройки Вашего сервера баз данных - обычно, рекомендуется его подстраивать сразу после установки Zabbix-а. Выделенная ему память там, пулы и т.д.
      а есть какие-то рекомендации по тюнингу mysql именно для zabbix в тех случаях когда в начале все было нормально, а потом нагрузка возросла?

      Comment

      • V_V
        Junior Member
        • Nov 2017
        • 5

        #4
        Originally posted by Kos
        Могу предположить, что тормозит процесс housekeeper, который по умолчанию запускается каждый час, а первый раз стартует как раз через час после запуска сервера.
        Видимо, у вас поднакопилось устаревших данных, которые он должен удалить; и эта работа сразу же сказывается и на остальных процессах, которые обращаются к базе (history syncer, configuration syncer).
        как-то можно остановить работу housekeeper, не останавливая заббикс?
        Originally posted by Kos
        Смотреть, в первую очередь, на настройки Вашего сервера баз данных - обычно, рекомендуется его подстраивать сразу после установки Zabbix-а. Выделенная ему память там, пулы и т.д.
        в этом сейчас большая проблема. при удаленном подключении, те через ssh, система подключиться к mysql не дает. говорит, что нет доступа.
        а консольно - черный экран.

        Comment

        • Kos
          Senior Member
          Zabbix Certified SpecialistZabbix Certified Professional
          • Aug 2015
          • 3404

          #5
          те проблема в том, что база уже не пустая (заббикс инсталлировали в ноябре 2016)?
          Скорее всего, проблема в том, что не задумывались ни об оптимизации базы данных, ни о сроке хранения истории и трендов. И когда что-то из них начало заканчиваться (прошёл год и старые данные стали подтираться хаускипером), то оказалось, что операция удаления старых данных тормозит всю базу.
          а есть какие-то рекомендации по тюнингу mysql именно для zabbix
          Что-то упоминается тут, но более подробно было где-то в другом месте. Мне казалось, что что-то было тут, но прямо сейчас что-то не найду.
          как-то можно остановить работу housekeeper, не останавливая заббикс?
          Боюсь, что совсем - нет. Но можно отрегулировать какие-то компоненты хаускипера (в веб-интерфейсе: меню Administration -> General, затем справа ввеху -> Housekeeping). Хотя нет, похоже, что в теперь уже можно (раньше было нельзя, регулировалось настройками в конфиге). Но, в любом случае, я не уверен, что изменения настроек повлияют на уже запущенный процесс.

          Во многих случаях (особенно при использовании MySQL) рекомендуется вместо хаускипера использовать партиционирование. На той же www.zabbix.org можно найти статьи, как это делается. Но я бы не рекомендовал с этого начинать; как минимум - сначала надо убедиться в том, что проблема связана именно с housekeeper-ом. Например, отключить его на какое-то время совсем и посмотреть, будет ли разница. Потом запустить его принудительно, например, на ночь:
          Code:
          zabbix_server -c /путь/zabbix_server.conf -R housekeeper_execute
          и затем посмотреть по графикам, как долго он будет работать.

          Comment

          • V_V
            Junior Member
            • Nov 2017
            • 5

            #6
            Originally posted by Kos
            Скорее всего, проблема в том, что не задумывались ни об оптимизации базы данных, ни о сроке хранения истории и трендов. И когда что-то из них начало заканчиваться (прошёл год и старые данные стали подтираться хаускипером), то оказалось, что операция удаления старых данных тормозит всю базу.
            Что-то упоминается тут, но более подробно было где-то в другом месте. Мне казалось, что что-то было тут, но прямо сейчас что-то не найду.
            Боюсь, что совсем - нет. Но можно отрегулировать какие-то компоненты хаускипера (в веб-интерфейсе: меню Administration -> General, затем справа ввеху -> Housekeeping). Хотя нет, похоже, что в теперь уже можно (раньше было нельзя, регулировалось настройками в конфиге). Но, в любом случае, я не уверен, что изменения настроек повлияют на уже запущенный процесс.

            Во многих случаях (особенно при использовании MySQL) рекомендуется вместо хаускипера использовать партиционирование. На той же www.zabbix.org можно найти статьи, как это делается. Но я бы не рекомендовал с этого начинать; как минимум - сначала надо убедиться в том, что проблема связана именно с housekeeper-ом. Например, отключить его на какое-то время совсем и посмотреть, будет ли разница. Потом запустить его принудительно, например, на ночь:
            Code:
            zabbix_server -c /путь/zabbix_server.conf -R housekeeper_execute
            и затем посмотреть по графикам, как долго он будет работать.
            после отключения в настройках галки "Активировать внутреннюю очистку истории" и перезагрузки сервиса заббикса проблема исчезла.


            поправил в конфиге следующие параметр:
            MaxHousekeeperDelete=100 (было 5000)
            и включил назад галку "Активировать внутреннюю очистку истории"

            после перезагрузки сервиса заббикса проблема больше не наблюдается.

            вопрос: нужна ли еще какая-либо оптимизация или данной установки достаточно?

            Comment

            • allexpetrov
              Senior Member
              Zabbix Certified Trainer
              Zabbix Certified SpecialistZabbix Certified Professional
              • May 2017
              • 361

              #7
              Добрый день,

              Все сильно зависит от того, насколько большая база у Вас накопилась и проводили ли Вы уже тюнинг производительности БД согласно советам авторитетных источников типа Percona?

              При огромных размерах базы рекомендуется проводить Partitioning: https://www.zabbix.org/wiki/Docs/how...ing_.28YAMP.29

              Рекомендую скрипт - он проще и понятнее

              С уважением,
              Алексей!

              Comment

              • V_V
                Junior Member
                • Nov 2017
                • 5

                #8
                Originally posted by allexpetrov
                Добрый день,

                Все сильно зависит от того, насколько большая база у Вас накопилась и проводили ли Вы уже тюнинг производительности БД согласно советам авторитетных источников типа percona?

                При огромных размерах базы рекомендуется проводить partitioning: https://www.zabbix.org/wiki/docs/how...ing_.28yamp.29

                Рекомендую скрипт - он проще и понятнее

                С уважением,
                Алексей!
                Алексей, добрый!

                оптимизаций никаких не было.
                а что за скрипт?

                Comment

                • allexpetrov
                  Senior Member
                  Zabbix Certified Trainer
                  Zabbix Certified SpecialistZabbix Certified Professional
                  • May 2017
                  • 361

                  #9
                  Немного инфы, извиняйте, на инглише:

                  1. https://www.percona.com/blog/2014/11...-mysql-zabbix/ вот вполне интересная статья на тему оптимизации БД под Zabbix.
                  2. Линк, который я дал выше на Zabbix ORG. Там пошаговая инструкция для партишенинга(секционирование) базы данных. Плюсы и минусы такого подхода можно нагуглить. Perl-скрипт там есть %)

                  В любом случае, насколько большая БД у Вас?

                  P.S. - Что касается самого Zabbix, то я всегда люблю говорить что думай,а потом делай. Это значит, что после тюнинга БД, но прежде чем партишенинг вводить - пересмотрите свою конфигурацию. Подойдите максимально критично к ценности каждых данных и насколько они Вам нужны. Насколько Вам нужна история за 3 месяца для чека, который выполняется каждые 15 секунд. Насколько Вам нужны тренды за год и т.д.

                  Comment

                  Working...