Zabbix housekeeper processes more than 75 busy как исправить

Однажды обнаружил предупреждение в панели Zabbix:
Zabbix housekeeper processes more than 75% busy

Процессы housekeeper предназначены для очистки устаревших данных, например в каждом элементе данных указывается период хранения истории и период хранения трендов, все что больше этих значений, то и очищается процессами housekeeper чтобы база данных не выросла до гигантских размеров.

Первое что можно оптимизировать, это интервал обновления, чем он реже, тем меньше данных заносится в базу данных и меньше потом придётся очищать. Все шаблоны я создавал сам, если есть существующие шаблоны, то их можно полностью клонировать и изменить. Например для клиентских коммутаторов на доступе я указывал интервал обновления 15m, период хранения истории 1d, период хранения трендов 60d. На серверах и прочем сетевом оборудовании в ядре естественно делал интервал обновления чаще по мере необходимости и больше период хранения трендов.

В конфигурации Zabbix сервера есть параметры для настройки housekeeper, откроем файл конфигурации в текстовом редакторе:

nano /etc/zabbix/zabbix_server.conf

Параметр HousekeepingFrequency определяет как часто процессы housekeeper будут выполнять очистку (в часах), по умолчанию значение равно 1, что означает — каждый час, доступные значения 0-24.

Параметр MaxHousekeeperDelete определяет сколько значений в таблицах базы данных будет удалено, по умолчанию 5000, что очень мало для сервера с большим количеством хостов и элементов данных, доступные значения 0-1000000. Если указать 0, то это уберет лимит, но нужно учитывать производительность дисковой системы и количество данных которые нужно удалить в базе данных, чтобы не получилось что процессы housekeeper будут запускать очистку каждый час и выполнять ее более часа. По умолчанию триггер «Zabbix housekeeper processes more than 75% busy» срабатывает если процесс очистки длится более 30 минут, за временем выполнения и нагрузкой на дисковую систему можно следить на графиках.

На момент написания статьи, этот Zabbix сервер обслуживал 754 хоста и имел 25609 элементов данных, в конфигурации я указал параметры:

HousekeepingFrequency=1
MaxHousekeeperDelete=550000

Как видим по графикам, очистка выполняется не дольше 15 минут.
Обычно если очистка выполняется более 30 минут, то это связано с тем что процессы housekeeper выполняются редко (например не каждый час) или не хватает дисковой производительности и не оптимизирован сервер баз данных.
Если собралось очень много устаревших данных, то можно остановить Zabbix сервер и очистить данные SQL запросами, примеры смотрите в другой моей статье, а также SQL запросы для массового изменения интервалов обновления в элементах данных.

SQL запросы для Zabbix
Смотрите другие мои стать про Zabbix

Стандартные настройки в zabbix, не всегда хорошо работают и их необходимо тюнить под свои нужды. Я собрал в данной статье, основные параметры для оптимизации. Возможно, — это не все и вы знаете больше, но я постараюсь максимизировать.

Настройка кеша

Для оптимизации заббикс сервера, стоит увеличить размер кеша, для этого — открываем:

# vim /etc/zabbix/zabbix_server.conf

Находим строку «CacheSize» и увеличиваем его.

### Option: CacheSize
#       Size of configuration cache, in bytes.
#       Shared memory size for storing host, item and trigger data.
#
# Mandatory: no
# Range: 128K-8G
# Default:
CacheSize=256M

Я увеличил до 256M. При надобности, можно добавить.

Zabbix discoverer processes more than 75% busy

Недавно получил алерт в заббиксе:

Zabbix discoverer processes more than 75% busy

Это можно исправить, откроем zabbix_server.conf конфиг-файл:

# vim /etc/zabbix/zabbix_server.conf

Ищем строку с опцией «StartDiscoverers» и увеличиваем данный параметр:

### Option: StartDiscoverers
#       Number of pre-forked instances of discoverers.
#
# Mandatory: no
# Range: 0-250
# Default:
StartDiscoverers=5

Я, опцию StartDiscoverers увеличил до 5.  На этом настройка заканчивается, нужно сохранить конфиг и перезагрузить zabbix сервер:

# service zabbix-server restart

Можно увидеть мой наглядный пример:

Zabbix discoverer processes more than 75% busy

Если после добавления хостов ( с разными подсетями) вы увидите что снова сработал этот триггер, то нужно увеличить StartDiscoverers.

Zabbix icmp pinger processes more than 75% busy

Недавно получил алерт в заббиксе:

Zabbix icmp pinger processes more than 75% busy

Данное сообщение, говорит — что процесс(ы) выполняющие ping по хостам, перегружены.

Это можно исправить, откроем zabbix_server.conf конфиг-файл:

# vim /etc/zabbix/zabbix_server.conf

Ищем строку с опцией «StartPingers» и увеличиваем данный параметр:

### Option: StartPingers
#       Number of pre-forked instances of ICMP pingers.
#
# Mandatory: no
# Range: 0-1000
# Default:
StartPingers=5

Я, опцию StartPingers увеличил до 5, тем самым — я увеличил количество процессов выполняющих ICMP Ping.

На этом настройка заканчивается, нужно сохранить конфиг и перезагрузить zabbix сервер:

# service zabbix-server restart

Zabbix poller processes more than 75% busy

poller — это процесс который опрашивает агентов.

Данный параметр стоит увеличивать в 2- случаях:

  • Большая сеть
  • Есть много недоступных ресурсов и они мониторятся.

Как исправить?

Это можно исправить, откроем zabbix_server.conf конфиг-файл:

# vim /etc/zabbix/zabbix_server.conf

Ищем строку с опцией «StartPollers» и увеличиваем данный параметр:

### Option: StartPollers
#       Number of pre-forked instances of pollers.
#
# Mandatory: no
# Range: 0-1000
# Default:
StartPollers=5

Я установил данный параметр в 5. Если очень будет худо, то увеличиваем его до 20. Ничто не приходит бесследно, увеличение процессов ведет к увеличение потребления ресурсов.

После этого, вы можете получить:

Zabbix unreachable poller processes more than 75% busy

Если видите у себя данное сообщение ( алерт, сработанный триггер), открываем конфиг:

# vim /etc/zabbix/zabbix_server.conf

Ищем строку с опцией «StartPollersUnreachable» и увеличиваем данный параметр:

### Option: StartPollersUnreachable
#       Number of pre-forked instances of pollers for unreachable hosts (including IPMI and Java).
#       At least one poller for unreachable hosts must be running if regular, IPMI or Java pollers
#       are started.
#
# Mandatory: no
# Range: 0-1000
# Default:
# StartPollersUnreachable=1

PS: У меня данный параметр используется по умолчанию и я его не трогал ( не было ошибок).

Имеется вероятность того, что перестанет хватать коннекщенов для БД, то надо увеличивать лимит подключений.

Zabbix housekeeper processes more than 75% busy

Это можно исправить, откроем zabbix_server.conf конфиг-файл:

# vim /etc/zabbix/zabbix_server.conf

И приводим к виду:

HousekeepingFrequency=1
MaxHousekeeperDelete=100

Сохраняем файл и перезагружаем zabbix:

# service zabbix-server restart

Zabbix busy timer processes, in %

Это можно исправить, откроем zabbix_server.conf конфиг-файл:

# vim /etc/zabbix/zabbix_server.conf

Переменную укажу позже (не знаю какая)!

Сохраняем файл и перезагружаем zabbix:

# service zabbix-server restart

Zabbix busy escalator processes, in %

Это можно исправить, откроем zabbix_server.conf конфиг-файл:

# vim /etc/zabbix/zabbix_server.conf

Переменную укажу позже (не знаю какая)!

Сохраняем файл и перезагружаем zabbix:

# service zabbix-server restart

Zabbix busy alerter processes, in %

Это можно исправить, откроем zabbix_server.conf конфиг-файл:

# vim /etc/zabbix/zabbix_server.conf

Переменную укажу позже (не знаю какая)!

Сохраняем файл и перезагружаем zabbix:

# service zabbix-server restart

Zabbix busy configuration syncer processes, in %

Это можно исправить, откроем zabbix_server.conf конфиг-файл:

# vim /etc/zabbix/zabbix_server.conf

Находим и изменяем:

HistoryCacheSize=

Сохраняем файл и перезагружаем zabbix:

# service zabbix-server restart

Zabbix busy db watchdog processes, in %

Это можно исправить, откроем zabbix_server.conf конфиг-файл:

# vim /etc/zabbix/zabbix_server.conf

Переменную укажу позже (не знаю какая)!

Сохраняем файл и перезагружаем zabbix:

# service zabbix-server restart

Zabbix busy history syncer processes, in %

Это можно исправить, откроем zabbix_server.conf конфиг-файл:

# vim /etc/zabbix/zabbix_server.conf

Находим и изменяем:

HistoryCacheSize=
CacheSize=

Сохраняем файл и перезагружаем zabbix:

# service zabbix-server restart

Zabbix busy self-monitoring processes, in %

Это можно исправить, откроем zabbix_server.conf конфиг-файл:

# vim /etc/zabbix/zabbix_server.conf

Переменную укажу позже (не знаю какая)!

Сохраняем файл и перезагружаем zabbix:

# service zabbix-server restart

Zabbix busy http poller processes, in %

Это можно исправить, откроем zabbix_server.conf конфиг-файл:

# vim /etc/zabbix/zabbix_server.conf

Находим и меняем параметр:

StartHTTPPollers=

Сохраняем файл и перезагружаем zabbix:

# service zabbix-server restart

Zabbix busy java poller processes, in %

Это можно исправить, откроем zabbix_server.conf конфиг-файл:

# vim /etc/zabbix/zabbix_server.conf

Находим и меняем параметр:

StartJavaPollers=

Сохраняем файл и перезагружаем zabbix:

# service zabbix-server restart

А на этом, у меня все и статья «Оптимизация настроек Zabbix» завершена.

На чтение 3 мин Просмотров 3.3к. Опубликовано 1 ноября, 2021 Обновлено 1 ноября, 2021

Стандартные настройки в zabbix, не всегда хорошо работают и их необходимо тюнить под свои нужды. Я собрал в данной статье, основные параметры для оптимизации. Возможно, — это не все и вы знаете больше, но я постараюсь максимизировать.

Содержание

  1. Настройка кеша
  2. Zabbix discoverer processes more than 75% busy
  3. Zabbix icmp pinger processes more than 75% busy
  4. Zabbix poller processes more than 75% busy
  5. Zabbix housekeeper processes more than 75% busy

Настройка кеша

Для оптимизации заббикс сервера, стоит увеличить размер кеша, для этого — открываем:

# vim /etc/zabbix/zabbix_server.conf

Находим строку «CacheSize» и увеличиваем его.

### Option: CacheSize
#       Size of configuration cache, in bytes.
#       Shared memory size for storing host, item and trigger data.
#
# Mandatory: no
# Range: 128K-8G
# Default:
CacheSize=256M

Я увеличил до 256M. При надобности, можно добавить.

Zabbix discoverer processes more than 75% busy

Недавно получил алерт в заббиксе:

Zabbix discoverer processes more than 75% busy

Это можно исправить, откроем zabbix_server.conf конфиг-файл:

# vim /etc/zabbix/zabbix_server.conf

Ищем строку с опцией «StartDiscoverers» и увеличиваем данный параметр:

### Option: StartDiscoverers
#       Number of pre-forked instances of discoverers.
#
# Mandatory: no
# Range: 0-250
# Default:
StartDiscoverers=5

Я, опцию StartDiscoverers увеличил до 5.  На этом настройка заканчивается, нужно сохранить конфиг и перезагрузить zabbix сервер:

# service zabbix-server resta

Можно увидеть наглядный пример:

Оптимизация настроек Zabbix

Если после добавления хостов ( с разными подсетями) вы увидите что снова сработал этот триггер, то нужно увеличить StartDiscoverers.

Zabbix icmp pinger processes more than 75% busy

Недавно получил алерт в заббиксе:

Zabbix icmp pinger processes more than 75% busy

Данное сообщение, говорит — что процесс(ы) выполняющие ping по хостам, перегружены.

Это можно исправить, откроем zabbix_server.conf конфиг-файл:

# vim /etc/zabbix/zabbix_server.conf

Ищем строку с опцией «StartPingers» и увеличиваем данный параметр:

### Option: StartPingers
#       Number of pre-forked instances of ICMP pingers.
#
# Mandatory: no
# Range: 0-1000
# Default:
StartPingers=5

Я, опцию StartPingers увеличил до 5, тем самым — я увеличил количество процессов выполняющих ICMP Ping.

На этом настройка заканчивается, нужно сохранить конфиг и перезагрузить zabbix сервер:

# service zabbix-server restart

Zabbix poller processes more than 75% busy

poller — это процесс который опрашивает агентов.

Данный параметр стоит увеличивать в 2- случаях:

  • Большая сеть
  • Есть много недоступных ресурсов и они мониторятся.

Как исправить?

Это можно исправить, откроем zabbix_server.conf конфиг-файл:

# vim /etc/zabbix/zabbix_server.conf

Ищем строку с опцией «StartPollers» и увеличиваем данный параметр:

### Option: StartPollers
#       Number of pre-forked instances of pollers.
#
# Mandatory: no
# Range: 0-1000
# Default:
StartPollers=5

Я установил данный параметр в 5. Если очень будет худо, то увеличиваем его до 20. Ничто не приходит бесследно, увеличение процессов ведет к увеличение потребления ресурсов.

После этого, вы можете получить:

Zabbix unreachable poller processes more than 75% busy

Если видите у себя данное сообщение ( алерт, сработанный триггер), открываем конфиг:

# vim /etc/zabbix/zabbix_server.conf

Ищем строку с опцией «StartPollersUnreachable» и увеличиваем данный параметр:

### Option: StartPollersUnreachable
#       Number of pre-forked instances of pollers for unreachable hosts (including IPMI and Java).
#       At least one poller for unreachable hosts must be running if regular, IPMI or Java pollers
#       are started.
#
# Mandatory: no
# Range: 0-1000
# Default:
# StartPollersUnreachable=1

PS: У меня данный параметр используется по умолчанию и я его не трогал ( не было ошибок).

Имеется вероятность того, что перестанет хватать коннекщенов для БД, то надо увеличивать лимит подключений.

Zabbix housekeeper processes more than 75% busy

Это можно исправить, откроем zabbix_server.conf конфиг-файл:

# vim /etc/zabbix/zabbix_server.conf

И приводим к виду:

HousekeepingFrequency=1
MaxHousekeeperDelete=100

Сохраняем файл и перезагружаем zabbix:

# service zabbix-server restart

09.05.2019

zabbix-logo

Стандартные настройки в zabbix, не всегда хорошо работают и их необходимо изменить под свои нужды. Я собрал в данной статье, основные параметры для оптимизации. Возможно, — это не все и вы знаете больше, но я постараюсь максимизировать.

Настройка кеша

Для оптимизации zabbix сервера, стоит увеличить размер кеша, для этого — открываем:

sudo nano /etc/zabbix/zabbix_server.conf

Находим строку «CacheSize» и увеличиваем его.

CacheSize=256M

Я увеличил до 256M. При надобности, можно добавить.

Zabbix discoverer processes more than 75% busy

Недавно получил алерт в заббиксе:

Zabbix discoverer processes more than 75% busy

Это можно исправить, откроем zabbix_server.conf конфиг-файл:

sudo nano /etc/zabbix/zabbix_server.conf

Ищем строку с опцией «StartDiscoverers» и увеличиваем данный параметр:

StartDiscoverers=5

Я, опцию StartDiscoverers увеличил до 5.  На этом настройка заканчивается, нужно сохранить конфиг и перезагрузить zabbix сервер:

sudo service zabbix-server restart

Если после добавления хостов ( с разными подсетями) вы увидите что снова сработал этот триггер, то нужно увеличить StartDiscoverers.

Zabbix icmp pinger processes more than 75% busy

Недавно получил алерт в заббиксе:

Zabbix icmp pinger processes more than 75% busy

Данное сообщение, говорит — что процесс(ы) выполняющие ping по хостам, перегружены.

Это можно исправить, откроем zabbix_server.conf конфиг-файл:

sudo nano /etc/zabbix/zabbix_server.conf

Ищем строку с опцией «StartPingers» и увеличиваем данный параметр:

StartPingers=5

Я, опцию StartPingers увеличил до 5, тем самым — я увеличил количество процессов выполняющих ICMP Ping.

На этом настройка заканчивается, нужно сохранить конфиг и перезагрузить zabbix сервер:

sudo service zabbix-server restart

Zabbix poller processes more than 75% busy

poller — это процесс который опрашивает агентов.

Данный параметр стоит увеличивать в 2- случаях:

  • Большая сеть
  • Есть много недоступных ресурсов и они мониторятся.

Как исправить?

Это можно исправить, откроем zabbix_server.conf конфиг-файл:

sudo nano /etc/zabbix/zabbix_server.conf

Ищем строку с опцией «StartPollers» и увеличиваем данный параметр:

StartPollers=5

Я установил данный параметр в 5. Если очень будет худо, то увеличиваем его до 20. Ничто не приходит бесследно, увеличение процессов ведет к увеличение потребления ресурсов.

После этого, вы можете получить:

Zabbix unreachable poller processes more than 75% busy

Если видите у себя данное сообщение ( алерт, сработанный триггер), открываем конфиг:

sudo nano /etc/zabbix/zabbix_server.conf

Ищем строку с опцией «StartPollersUnreachable» и увеличиваем данный параметр:

StartPollersUnreachable=1

PS: У меня данный параметр используется по умолчанию и я его не трогал ( не было ошибок).

Имеется вероятность того, что перестанет хватать коннекщенов для БД, то надо увеличивать лимит подключений.

Zabbix housekeeper processes more than 75% busy

Это можно исправить, откроем zabbix_server.conf конфиг-файл:

sudo nano /etc/zabbix/zabbix_server.conf

И приводим к виду:

HousekeepingFrequency=1
MaxHousekeeperDelete=100

Сохраняем файл и перезагружаем zabbix:

sudo service zabbix-server restart

Zabbix busy timer processes, in %

Это можно исправить, откроем zabbix_server.conf конфиг-файл:

sudo nano /etc/zabbix/zabbix_server.conf

Переменную укажу позже (не знаю какая)!

Сохраняем файл и перезагружаем zabbix:

sudo service zabbix-server restart

Zabbix busy escalator processes, in %

Это можно исправить, откроем zabbix_server.conf конфиг-файл:

sudo nano /etc/zabbix/zabbix_server.conf

Меняем переменную:

MaxHousekeeperDelete

Сохраняем файл и перезагружаем zabbix:

sudo service zabbix-server restart

Zabbix busy alerter processes, in %

Это можно исправить, откроем zabbix_server.conf конфиг-файл:

sudo nano /etc/zabbix/zabbix_server.conf

Переменную укажу позже (не знаю какая)!

Сохраняем файл и перезагружаем zabbix:

sudo service zabbix-server restart

Zabbix busy configuration syncer processes, in %

Это можно исправить, откроем zabbix_server.conf конфиг-файл:

sudo nano /etc/zabbix/zabbix_server.conf

Находим и изменяем:

HistoryCacheSize=

Сохраняем файл и перезагружаем zabbix:

sudo service zabbix-server restart

Zabbix busy db watchdog processes, in %

Начиная с Zabbix 3.4 alpha, нет необходимости в мониторинге процесса db watchdog, так как он был удален. Шаблон приложения Zabbix сервер не должен иметь этот элемент.

Zabbix busy history syncer processes, in %

Это можно исправить, откроем zabbix_server.conf конфиг-файл:

sudo nano /etc/zabbix/zabbix_server.conf

Находим и изменяем:

HistoryCacheSize=
CacheSize=

Сохраняем файл и перезагружаем zabbix:

sudo service zabbix-server restart

Zabbix busy self-monitoring processes, in %

Это можно исправить, откроем zabbix_server.conf конфиг-файл:

sudo nano /etc/zabbix/zabbix_server.conf

Переменную укажу позже (не знаю какая)!

Сохраняем файл и перезагружаем zabbix:

sudo service zabbix-server restart

Zabbix busy http poller processes, in %

Это можно исправить, откроем zabbix_server.conf конфиг-файл:

sudo nano /etc/zabbix/zabbix_server.conf

Находим и меняем параметр:

StartHTTPPollers=

Сохраняем файл и перезагружаем zabbix:

sudo service zabbix-server restart

Zabbix busy java poller processes, in %

Это можно исправить, откроем zabbix_server.conf конфиг-файл:

sudo nano /etc/zabbix/zabbix_server.conf

Находим и меняем параметр:

StartJavaPollers=

Сохраняем файл и перезагружаем zabbix

sudo service zabbix-server restart

А на этом, у меня все и статья «Оптимизация настроек Zabbix» завершена.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Ошибку «Zabbix housekeeper processes more than 75% busy» можно исправить через файл-конфигуратор zabbix. Откроем файл zabbix_server.conf :

# nano /etc/zabbix/zabbix_server.conf

Находим параметр HousekeepingFrequency приводим к виду, изменив значения по умолчанию:

### Option: HousekeepingFrequency
# How often Zabbix will perform housekeeping procedure (in hours).
# Housekeeping is removing outdated information from the database.
# To prevent Housekeeper from being overloaded, no more than 4 times HousekeepingFrequency
# hours of outdated information are deleted in one housekeeping cycle, for each item.
# To lower load on server startup housekeeping is postponed for 30 minutes after server start.
# With HousekeepingFrequency=0 the housekeeper can be only executed using the runtime control option.
# In this case the period of outdated information deleted in one housekeeping cycle is 4 times the
# period since the last housekeeping cycle, but not less than 4 hours and not greater than 4 days.
#
# Mandatory: no
# Range: 0-24
# Default:
# HousekeepingFrequency=1
HousekeepingFrequency=1

и MaxHousekeeperDelete:

### Option: MaxHousekeeperDelete
#	The table "housekeeper" contains "tasks" for housekeeping procedure in the format:
#	[housekeeperid], [tablename], [field], [value].
#	No more than 'MaxHousekeeperDelete' rows (corresponding to [tablename], [field], [value])
#	will be deleted per one task in one housekeeping cycle.
#	If set to 0 then no limit is used at all. In this case you must know what you are doing!
#
# Mandatory: no
# Range: 0-1000000
# Default:
# MaxHousekeeperDelete=5000
MaxHousekeeperDelete=200
HousekeepingFrequency=1
MaxHousekeeperDelete=100

Сохраняем файл и перезагружаем zabbix:

# service zabbix-server restart

Понравилась статья? Поделить с друзьями:
  • Как найти гнездо домашних клопов
  • Grim dawn текст квадратами как исправить
  • Как составить поэтажную схему балки
  • Как найти источник порочной энергии геншин
  • Как найти планируемый объем реализации продукции