Zabbix: мониторинг скорости появления детей

Мы настроили zabbix для мониторинга нашей инфраструктуры, и наша команда безопасности отказала нам в запуске пользовательских сценариев через zabbix. Это делает нашу жизнь немного сложнее в поиске решений, которые не требуют пользовательских сценариев.

Некоторое время я исследовал, как мы можем отслеживать скорость появления дочерних процессов, но пока безуспешно.

Насколько я знаю, проверки zabbix не включают проверки скорости появления, можете ли вы предложить, как мы можем этого добиться?

1 ответ

Решение

Вам нужно несколько вилок - вы можете получить их с помощью vmstat -f (количество вилок с момента загрузки):

vmstat -f

Но вы не можете запустить какую-либо команду, потому что безопасность (OT я знаю, их ответ по умолчанию всегда: нет, это невозможно:-D). Однако вы можете создать модуль Zabbix, который будет выполнять вашу команду =>, что не является умной идеей. Лучшим вариантом является считывание количества вилок непосредственно со счетчика ядра. Вы можете проверить это в cmd (это эквивалент vmstat -f):

cat /proc/stat | grep ^processes

Ваш Zabbix модуль должен читать /proc/stat, разобрать номер из строки, которая начинается с processes а затем Zabbix агент использует его в качестве метрического значения. Кусок торта для разработчика C. Смотрите фиктивный модуль Zabbix и просто расширяйте его.

Вам нужна скорость, затем настройте элемент в Zabbix UI и сохраните его как Delta (speed per second)так что, наконец, это будет вилки / секунду. Вероятно, Zabbix справится и с переполнением. Производительность будет потрясающей, потому что /proc/stat не настоящий файл, поэтому никаких операций ввода-вывода. Никаких вилок только CPU и mem не потребуются. Также вы можете изменить интервал обновления товара, и результат будет по-прежнему корректным.

Другие вопросы по тегам