Zabbix Documentation 1.8

3.04.04.4 (current)| In development:5.0 (devel)| Unsupported:1.82.02.22.43.23.44.2Guidelines

User Tools

Site Tools

This translation is older than the original page and might be outdated. See what has changed.

Sidebar

ru:manual:tutorials

7 Обучение

Этот раздел содержит пошаговые инструкции для наиболее обобщенных задач.

13.1 Расширение Zabbix агентов

В этом руководстве приведены пошаговые инструкции как расширить функциональность Zabbix агента.

Шаг 1

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

Например, мы можем написать следующую команду, чтобы получить общее количество запросов, выполненных сервером MySQL:

mysqladmin -uroot status|cut -f4 -d":"|cut -f1 -d"S"

После выполнения, команда возвращает общее количество SQL запросов.

Шаг 2

Добавим эту команду в конфигурационный файл агента.

Добавьте в zabbix_agentd.conf команду:

UserParameter=mysql.questions,mysqladmin -uroot status|cut -f4 -d":"|cut -f1 -d"S"

mysql.questions это уникальный идентификатор. Здесь может быть любая строка, например, queries.

Протестируем этот параметр, используя утилиту zabbix_get.

Шаг 3

Перезапустите Zabbix агента.

Агент заново загрузит конфигурационный файл.

Шаг 4

Добавим новый элемент данных для мониторинга.

Добавьте новый элемент данных с ключем=mysql.questions к наблюдаемому узлу сети. Тип этого элемента данных должен быть “Zabbix агент” или “Zabbix агент (активный)”.

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

2009/12/12 16:52

13.2 Мониторинг лог-файлов

Это руководство содержит пошаговые инструкции по настройке мониторинга лог-файлов. Убедитесь, что узел сети уже создан и настроен в веб-интерфейсе Zabbix.

Шаг 1

Настроим Zabbix агента.

Следуйте стандартной инструкции по установке и настройке агента на наблюдаемом узле сети. Удостоверьтесь, что параметр Hostname совпадает с именем узла сети, настроенного в веб-интерфейсе Zabbix.

Так же убедитесь, что параметр DisableActive не задан в zabbix_agentd.conf

Шаг 2

Добавим новый элемент данных для наблюдения лог-файла.

Обратите внимание на следующие параметры элемента данных:

Параметр Описание
Тип Должен быть установлен в 'Zabbix агент (активный)'.
Ключ Должен быть установлен в 'log[файл<,regexp>]'. Например: log[/var/log/syslog], log[/var/log/syslog,error]. Убедитесь, что у пользователя 'zabbix' имеются права на чтение этого файла, иначе элемент данных перейдет в состояние ‘Не поддерживается. Zabbix агент будет фильтровать записи в лог-файле по указанному регулярному выражению.
Тип информации Должен быть установлен в 'Журнал (лог)'.
Интервал обновления (в сек) Параметр определяет как часто Zabbix агент будет проверять лог-файл на предмет его любых изменений. Обычно нужно установить в 1 секунду, для того чтобы получить новые записи как можно быстрее.
2009/12/14 17:10

13.3 Удаленные команды

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

Шаг 1

В Zabbix агенте включите выполнение удаленных команд. Убедитесь, что параметр EnableRemoteCommands установлен в 1 и раскомментирован в zabbix_agentd.conf. Перезапустите демон агента, если вы изменили этот параметр.

Шаг 2

Настройте новое действие перейдя в Настройка → Действия и в блоке Новое действие выберите тип операции Удаленная команда.

Обратите внимание на следующие параметры в действии:

Параметр Описание
Тип действия Должен быть установлен в 'Удаленная команда'.
Удаленная команда Каждая строка должна содержать выполняемую команду. Например: хост:sudo /etc/init.d/apache restart. Удаленные команды могут содержать макросы!
Обратите внимание на использование sudo - по умолчанию пользователь Zabbix не имеет прав перезапускать системные сервисы. Ниже смотрите советы о том, как настроить sudo.

Синтаксис удаленных команд:

Удаленная команда Описание
{HOSTNAME}:<команда> Команда 'команда' будет выполнена на том узле сети где произошло событие.
<узел сети>:<команда> Команда 'команда' будет выполнена на стороне хоста 'узел сети'.
<группа узлов сети>#<команда> Команда 'команда' будет выполнена на всех узлах сети в группе узлов сети 'группа узлов сети'.
Zabbix агент выполняет команды в фоновом режиме. Zabbix не проверяет успешность выполнения команды.
Удаленные команды в Zabbix версии младше 1.4 ограничены 44 символами, а начиная с Zabbix версии 1.4 удаленные команды ограничены 255 символами.

Синтаксис удаленных команд IPMI:

Удаленная команда Описание
{HOSTNAME}:IPMI <ipmi control> [значение] Синтаксис для выполнения IPMI команды, на том узле сети где произошло событие. Поддерживаемые значения: “on”, “off” или числа (по умолчанию 1).
<узел сети>:IPMI <ipmi control> [значение] Синтаксис для выполнения IPMI команды на конкретном узле сети.
<группа узлов сети>#IPMI <ipmi control> [значение] Синтаксис для выполнения IPMI команды на всех узлах сети в группе узлов сети.
Права доступа

Удостоверьтесь, что пользователь 'zabbix' имеет права на выполнение настроенных команд. Может быть нужно будет использовать sudo для получения доступа к привилегированным командам. Для настройки доступа, выполните под root:

# visudo

Примеры строк, которые могут быть использованы в файле sudoers:

# разрешает пользователю 'zabbix'  выполнять все команды без ввода пароля.
zabbix ALL=NOPASSWD: ALL
# разрешает пользователю 'zabbix' перезапускать apache без ввода пароля.
zabbix ALL=(ALL) NOPASSWD: /etc/init.d/apache restart
На некоторых системах файл sudoers препятствует нелокальным пользователям выполнять команды. Для изменения этого, закомментируйте опцию requiretty в /etc/sudoers.
На новых системах возможно потребуется установить Defaults visiblepw в /etc/sudoers.
Пример 1

Перезагрузка Windows при определенном условии.

Для того, чтобы автоматически перезагрузить Windows в случае возникновения проблем обнаруженных Zabbix, определим следующие действия:

Параметр Описание
Тип действия 'Удаленная команда'
Удаленная команда host:c:\windows\system32\shutdown.exe -r -f
Замените 'host' на имя узла сети сервера Windows согласно веб-интерфейса Zabbix
Пример 2

Перезагрузка хоста используя управление через IPMI.

ПАРАМЕТРОПИСАНИЕ
Тип действия'Удаленная команда'
Удаленная команда{HOSTNAME}:IPMI reset on
Пример 3

Выключение хоста используя управление через IPMI.

ПАРАМЕТРОПИСАНИЕ
Тип действия'Удаленная команда'
Удаленная команда{HOSTNAME}:IPMI power off
2009/12/14 17:28

13.4 Мониторинг сервисов Windows

Этот руководство содержит пошаговые инструкции по настройке мониторинга сервисов Windows. Предполагается, что Zabbix сервер и Zabbix агент настроены и работают.

Шаг 1

Получение имени сервиса

Вы можете получить это имя, перейдя к оснастке Службы в консоли mmc и открыв свойства службы, состояние которой вы хотите наблюдать. На вкладке Общие вы должны увидеть поле, называемое именем службы. Это значение без скобок и будет нужным именем сервиса. Например, если бы я хотел наблюдать за сервисом “workstation”, то мой сервис будет lanmanworkstation.

Шаг 2

Добавление элемента данных для наблюдения

Добавьте новый элемент данных с ключем service_state[lanmanworkstation], типом данных Числовой (целое положительное) и с преобразованием значений Windows service state.

2009/12/14 17:35