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


Sidebar

ru:manual:tutorials:remote_actions

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