Просмотр Исходного

{toc}


Предположим он уже установлен и используется.

Если нет - документация по установке и настройке здесь [https://www.zabbix.com/documentation/2.0/ru/manual/installation]

В качестве примеров используется zabbix server на 10.50.140.111 и carbon reductor с zabbix agent на 10.50.140.230

h1. Добавляем Carbon Reductor в список серверов в zabbix


Создаём узел сети

!Снимок экрана 2016-03-22 в 12.23.02.png|border=1!

Выбираем группы Linux servers, указываем IP адрес и имя узла сети (в конфиге zabbix-agent должно быть точно такое же).

!Снимок экрана 2016-03-22 в 12.30.22.png|border=1!

Сохраняем. В шаблонах выбираем Linux Server, Http app, icmp ping и присоединяем их (не забудьте нажать "Добавить" перед "Обновить").

!Снимок экрана 2016-03-22 в 12.31.59.png|border=1!

Сохраняем

h1. Настройки Carbon Reductor

h2. Опции

1. Убираем галочку "Оптимизировать подсистему роутинга" в прочих настройках на редукторе, чтобы разрешить трафик zabbix.

2. Создаём хук, добавляющий правило в INPUT:

{code}
cat > /usr/local/Reductor/userinfo/hooks/firewall.sh << EOF
#!/bin/bash

if [ "$1" = 'start' ]; then
    echo "- Открываем zabbix-agent"
    iptables -I reductor_input 5 -m state --state NEW -m tcp -p tcp --dport 10050 -j ACCEPT || true
fi
EOF
{code}

(на всякий случай проверьте что вставилось в файл, $1 не должен быть экранирован)
Даём права на чтение:
{code}
chmod +x /usr/local/Reductor/userinfo/hooks/firewall.sh
{code}
Рестартуем Редуктор для создания нужных правил:
{code}
service reductor restart
{code}


h2. Устанавливаем агент

{code}
rpm -ivh http://repo.zabbix.com/zabbix/2.4/rhel/6/x86_64/zabbix-release-2.4-1.el6.noarch.rpm
yum -y install zabbix-agent
chkconfig --level 345 zabbix-agent on
{code}

h1. Конфигурируем сервер и агент

Пример конфига сервера:
{code}
# grep -v '^#' /etc/zabbix/zabbix_server.conf | grep -v '^$'
LogFile=/var/log/zabbix/zabbix_server.log
LogFileSize=0
PidFile=/var/run/zabbix/zabbix_server.pid
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
DBSocket=/var/lib/mysql/mysql.sock
SNMPTrapperFile=/var/log/snmptt/snmptt.log
AlertScriptsPath=/usr/lib/zabbix/alertscripts
ExternalScripts=/usr/lib/zabbix/externalscripts
{code}

Пример конфига агента

{code}
# grep -v "^#" /etc/zabbix/zabbix_agentd.conf | grep -v ^$
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
Server=10.50.140.111
ServerActive=10.50.140.111
Hostname=carbon-reductor
Include=/etc/zabbix/zabbix_agentd.d/
[root@reductor_master ~]#
{code}
После этого перезапускаем сервер и агент:

{code}
service zabbix-server restart
{code}

{code}
service zabbix-agent restart
{code}

h1. Проверяем работу

{code}
tail -f /var/log/zabbix/zabbix_agentd.log
{code}
и


{code}
tail -f /var/log/zabbix/zabbix_server.log
{code}
не должны содержать ошибок после рестарта

h1. Кастомные проверки

С Carbon Reductor можно забирать различные данные, имеется статья с примерами - [reductor5:Сбор данных о Reductor с сервера].


Настройка > Узлы сети > Carbon Reuctor (элементы данных) > Создать элемент данных

h2. Число ошибок в последней диагностике

!Снимок экрана 2016-03-22 в 15.01.53.png|border=1!


И триггер к нему:

!Снимок экрана 2016-03-22 в 14.53.03.png|border=1!


h1. Настройка оповещений

По умолчанию пункт Настройка - Действия - Report problems to Zabbix administrators выключен, включите его.



Также см. статью&nbsp; [https://www.zabbix.com/documentation/2.0/ru/manual/quickstart/notification]















Обязательно проверьте, что уведомления приходят и в течение 24 часов в сутки обязательно есть кто-нибудь, кто на них прореагирует.

h2. Альтернативные уведомления

Можно вызывать собственные скрипты для уведомлений, к примеру слать ошибку в Slack:

!Снимок экрана 2016-03-22 в 13.49.49.png|border=1!


Из коробки доступны e-mail, sms через модем (на случай пропажи доступа в сеть, наверное очень полезно), jabber.

h1. Результат

В результате должно получиться что-то вроде:

!Снимок экрана 2016-03-22 в 14.02.02.png|border=1!


(то есть на каждую созданную ошибку должны появляться действия - отправка сообщений).