Немного о мониторинге и простой установке Zabbix
#Zabbix
#мониторинг
#DevOps
#установка
#*.nix
#Linux
#PostgreSQL
Что такое мониторинг
Рано или поздно (а лучше рано) возникают вопросы повышения качества сервисов, улучшения стабильности и быстрого реагирования на возникающие проблемы. Их можно решать различными путями, но самым эффективным и стратегически правильным является разворачивание мониторинга.
При этом под мониторить можно как инфраструктуру, так и вспомогательные сервисы, показатели состояния приложений и бизнес-показатели. Главное, чтобы собираемые данные были востребованы, а не хранились “для галочки” в базах данных до лучших времен.
Обычно от мониторинга ждут следующего:
- Оповещение о критических событиях в системе на основе собираемых данных
- Отражение текущего актуального состояния компонентов системы
- Удобная визуализация данных, в т.ч. и за большие периоды
- Построение отчетов
При этом на самом старте его разворачивания и настройки чаще всего нет четкого понимания какие инструменты использовать, какие метрики собирать, когда нужно рассылать оповещения и так далее. Вместо того, чтобы надолго уходить в изучение этой темы и месяц выбирать всем отделом систему мониторинга и набор метрик - проще всего воспользоваться готовыми рецептами, которые уже после начала использования адаптировать под себя. Главное, чтобы мониторинг был востребованным, а данные им собираемые могли использоваться на практике.
Таким первым шагом может быть установка системы мониторинга Zabbix. Это не единственное решение, но весьма себя зарекомендовавшее. Другими решениями можно назвать:
- Graphite
- Prometheus
- Graphana - интерфейс для визуализации
- StatsD
- И многие другие.
Но мы сегодня остановимся именно на Zabbix. Но не обязательно использовать на рабочем окружении только этот продукт, ведь система мониторинга из нескольких частей или компонентов всегда лучше, чем единый монолит на все случаи и времена. Поэтому использовать вместе с Zabbix, например, Prometheus - просто отлично.
Совсем немного о Zabbix
Он может все! Мониторинг сетей, серверов, облачных ресурсов, сервисов и бизнес показателей. Это мощнейшая система мониторинга распределенной архитектуры, да к тому же и OpenSource. Все самое актуальное и необходимое всегда можно узнать в официальной документации. А пока кратко пробежимся по возможностям.
Сбор данных Zabbix может выполнять на основе:
- Логов
- Интерфейсов
- API
- SNMP
- ping
- Запросов к ресурсам
- Открытых портов
- Анализу запущеных процессов
- Счетчиков производительности ОС
- Информации о СУБД (резервные копии, показатели производительности и др.)
Все эти данные позволяют в дальнейшем диагностировать приложения и сервисы, делать правильные решения по улучшению стабильности и производительности. Кроме этого есть возможность использовать шаблоны собираемых показателей и автообнаружение новых машин для мониторинга в сети. В общем, все то, что и должна делать система мониторинга.
Пройдем все основные шаги по установке и началу использования Zabbix.
Подготовка к установке
На момент создания публикации выпущена версия Zabbix 5.0, в которой есть различные новые фишки, одна из которых это TimescaleDB, через которую выполнена реализация партиционирования данных при организации хранилища логов на базе PostgreSQL. Но мы не будем ее использовать. Мы пойдем по пути использования предыдущих стабильных версий:
Будем считать, что CentOS уже установлена, а также сконфигурирован firewall, сетевые настройки, SELinux и прочее. Мы лишь остановимся на настройках, непосредственно связанных с Zabbix. Единственное, рекомендую обязательно обновить пакеты, компоненты системы до свежих версий командой:
sudo yum update
Итак, поехали!
Подготавливаем базу данных
Прежде чем устанавливать сам Zabbix, установим и настроим PostgreSQL 11, который будет хранилищем данных системы мониторинга. Конечно, можно было бы представить просто список команд в терминале и остановиться на этом, но это было бы некорректно.
Вместо этого рекомендую сначала перейти на официальную страницу загрузки / установки PostgreSQL, а уже на ней выбрать операционную систему, версию СУБД, платформу и архитектуру. После этого будет выдана актуальная инструкция по установке СУБД для выбранных параметров. Это может пригодиться, если Вам нужна другая версия СУБД или при использовании другой операционной системы.
Мы же продолжим пример для CentOS 7 и PostgreSQL 11. Устанавливать СУБД будем на тот же сервер, где будет находиться и сам Zabbix. В рабочем окружении это не всегда правильно и для масштабирования хранилища может потребоваться вынести PostgreSQL на отдельный сервер (или даже нескольких серверов). Но в нашем простом примере все будет на одной машине.
# Установка репозиторияsudo yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm# Устанавливаем PostgreSQLsudo yum install -y postgresql11-server# Дополнительные настройки# Инициализация кластера баз данныхsudo /usr/pgsql-11/bin/postgresql-11-setup initdb# Включаем автоматический запуск PostgreSQLsudo systemctl enable postgresql-11# И запускаем егоsudo systemctl start postgresql-11
Проверим успешно ли прошла установка. Запустим утилиту psql и выполним запрос на получение версии СУБД.
# Запускаем psql от имени пользователя postgressudo -u postgres -i psql# Выполняем запрос получения версии СУБДpostgres=#SELECT VERSION();# Пример результата:# PostgreSQL 11.9 on x86_64-pc-linux-gnu,# compiled by gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-39), 64-bit
Ошибок нет - значит все прошло отлично. Можно также провести тюнинг настроек PostgreSQL, но это уже другая история. Можете использовать сервис PGTune, чтобы подобрать настройки под себя. Подробнее об этом останавливаться сейчас не будем. На этапе установки Zabbix мы еще вернемся к некоторым настройкам СУБД, но это будет позже.
Установка и конфигурирование Zabbix
Как и с PostgreSQL, прежде чем начать идем на официальную страницу выбора параметров для загрузки Zabbix, а после выполняем предложенные инструкции. Для выбранной нами конфигурации получилась вот вот такая настройка.
Теперь начнем установку Zabbix.
Установка пакетов
Первым делом устанавливаем репозитории, пакеты Zabbix-сервера, веб-интерфейс и агент сбора данных.
# Установка репозиторияsudo rpm -Uvh https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-2.el7.noarch.rpm# Предварительная очисткаsudo yum clean all
Теперь все готово для установки пакетов сервера, веб-интерфейса и агента.
# Установка основных пакетов сервера, веб-интерфейса и агентаsudo yum install zabbix-server-pgsql zabbix-web-pgsql zabbix-apache-conf zabbix-agent
Грандиозный успех!
Настраиваем базу данных
Ранее мы установили СУБД, теперь время создать пользователя баз данных для системы мониторинга.
# Создаем пользователя баз данных: zabbix# Будет запрошен пароль для нового пользователя.sudo -u postgres createuser --pwprompt zabbix# Создаем базу данных zabbix, у которой владельцем будет пользователь zabbix (последний параметр)sudo -u postgres createdb -O zabbix zabbix
Когда база создана, необходимо импортировать схему данных базы.
sudo zcat /usr/share/doc/zabbix-server-pgsql*/create.sql.gz | sudo -u zabbix psql zabbix
Теперь в файле ‘/etc/zabbix/zabbix_server.conf’ изменим параметр пароля базы данных zabbix:
sudo mcedit /etc/zabbix/zabbix_server.conf# Ищем 'DBPassword=' и подставляем пароль, указанный выше для пользователя zabbix
Немного настроек для фронта
Осталась еще одна настройка - это настроить часовой пояс для PHP в файле ‘/etc/httpd/conf.d/zabbix.conf’:
sudo mcedit /etc/httpd/conf.d/zabbix.conf# Пример конфигурации:# php_value date.timezone Europe/Moscow
Готово!
Стартуем процессы
Теперь все готово для запуска процессов Zabbix.
# Перезапускаем процессыsudo systemctl restart zabbix-server zabbix-agent httpd# Устанавливаем автоматический запускsudo systemctl enable zabbix-server zabbix-agent http
После этого все необходимые службы будут запускаться автоматически при старте системы.
Ох уж эта безопасность
Если после этого попытаться зайти через браузер со сторонней машины на фронт Zabbix, то, скорее всего, ничего не выйдет. Нужно настроить фаервол так, чтобы был доступ к веб-интерфейсу Zabbix.
sudo firewall-cmd --permanent --zone=public --add-port=80/tcpsudo firewall-cmd --reload
Но и это еще не все. Нужно настроить возможность подключаться к базе zabbix по логину и паролю, и только локально. Для этого нужно в файле конфигурации ‘/var/lib/pgsql/11/data/pg_hba.conf’ применить вот такие изменения:
# TYPE DATABASE USER ADDRESS METHOD# "local" is for Unix domain socket connections onlylocal all all peer# IPv4 local connections:# Разрешаем подключение к базе zabbix пользователю zabbix# по логину и паролю и только локально (для IPv4)host zabbix zabbix 127.0.0.1/32 passwordhost all all 127.0.0.1/32 ident# IPv6 local connections:# Разрешаем подключение к базе zabbix пользователю zabbix# по логину и паролю и только локально (для IPv6)host zabbix zabbix ::1/128 passwordhost all all ::1/128 ident# Allow replication connections from localhost, by a user with the# replication privilege.local replication all peerhost replication all 127.0.0.1/32 identhost replication all ::1/128 ident
Проверяем подключение к базе zabbix с помощью psql:
psql -h 127.0.0.1 -W -U zabbix
Если после ввода пароля запустилась сессия работы с PostgreSQL, то все в порядке. В противном случае проверьте настройки файла pg_hba.conf и корректность пароля.
Теперь, если зайти по URL “http://<АдресСервера>/zabbix", то мы попадем на страницу начальной настройки Zabbix.
Мастер настройки Zabbix
Мы находимся на начальной странице настройки Zabbix.

Жмем “Next step” и попадаем на страницу с проверкой всех требований к работе системы мониторинга. Везде должно быть ОК. Если нет, то смотрите документацию по ситуации. Обычно необходимо установить совместимую версию PHP с текущей версией Zabbix.

Идем далее и попадаем на страницу настройки подключения к базе данных. Даже если сейчас введем пароль для пользователя zabbix, то ничего не выйдет. Мы получим ошибку “Error connecting to database.” и не будет понятно почему так произошло.

Но мы ведь настроили firewall и возможность подключаться к zabbix по логину и паролю выше. И все работало! В чем же дело? Ответ не лежит на поверхности и кроется под страшным названием SElinux - это система принудительного контроля доступа. Если посмотреть связанные с ней логи в файле ‘/var/log/audit/audit.log’ сразу после возникновения ошибки подключения на фронте Zabbix:
# Читаем последние 25 строк из файла логовsudo tail -n 25 /var/log/audit/audit.log
то можем увидеть такое сообщение:
type=AVC msg=audit(1599285909.278:1682): avc: denied { name_connect }for pid=9610 comm="httpd" dest=5432 scontext=system_u:system_r:httpd_t:s0tcontext=system_u:object_r:postgresql_port_t:s0 tclass=tcp_socket permissive=0
Именно SELinux блокирует подключение Apache (https) к PostgreSQL. Интуитивно это понять никак не получится, нужно просто знать :) (а возможно и гуглить). Исправить это можно добавив правило, разрешающее такое подключение:
# Включаем правило, разрешающее Apache подключаться к PostgreSQLsetsebool -P httpd_can_network_connect_db 1# Проверяем настройкуgetsebool httpd_can_network_connect_db# Должно вернуться: httpd_can_network_connect_db --> on
Теперь подключение успешно пройдет и ошибки подключения к базе данных не будет. Переходим к настройке сервера:

Здесь нам нужно ввести имя сервера (или IP-адрес), а также имя установки (не обязательно). В нашем простом случае оставлю это без изменений, т.к. ни на что в данном примере не влияет. Перейдя на следующий шаг мы увидим итоговые параметры.

Проверяем их и идем на финальный шаг.

Ура! Все эти настройки можно будет изменить в конфигурационном файле ‘/etc/zabbix/web/zabbix.conf.php’ по необходимости.
Первый поход на фронт
Снова идем по адресу ‘http://<АдресСервера>/zabbix' и попадаем на форму аутентификации.

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

А также уже есть собранные данные для анализа. Это информация о самом сервере Zabbix.

Все готово для использования.
И снова проблема
Мы рано радовались. Снова появилась проблема - сервер Zabbix не запускается, хотя на этапе настройки веб-интерфейса все могло быть хорошо. В логах ‘/var/log/zabbix/zabbix_server.log’ можно увидеть такую информацию:
29435:20200905:094034.449 cannot start preprocessing service: Cannot bind socket to "/var/run/zabbix/zabbix_server_preprocessing.sock": [98] Address already in use.29400:20200905:094034.450 One child process died (PID:29435,exitcode/signal:1). Exiting ...
На самом деле все это есть в документации и мы специально пришли к этой проблеме, чтобы разобрать как бороться с ошибками. В официальной документации сказано, что если используется SELinux, то нужно выполнить дополнительные настройки.
# разрешаем соединение веб-сервера с Zabbixsudo setsebool -P httpd_can_connect_zabbix on# Следующий пункт мы уже сделали ранее# Если база данных доступна через сеть (включая 'localhost' в случае PostgreSQL) вам также потребуется разрешить соединение между Zabbix веб-интерфейсом и базой данных:# setsebool -P httpd_can_network_connect_db on# Перезапускаем Apachesudo service httpd restart
Но пока и этого недостаточно. Нужно настроить политики SELinux, чтобы разблокировать заблокированные операции Zabbix’а. Для быстрой настройки установим пакет ‘policycoreutils-python’:
sudo yum install policycoreutils-python
Теперь мы можем создать правила SELinux на основании событий в логах:
grep AVC /var/log/audit/audit.log* | audit2allow -M systemd-allow; semodule -i systemd-allow.pp
Перезапускаем Zabbix и теперь все готово:
# Перезапускаемsudo systemctl restart zabbix-server# Проверяем статусsudo systemctl status zabbix-server
Конечно, можно было бы просто взять и отключить SELinux и это бы решило проблемы. Но отключать систему безопасности для работы одного приложения считаю неправильным. Хотя бывают ситуации, когда использование SELinux не имеет смысла, но это не наш случай. В любом случае ошибок нет, можно идти дальше.
И снова проблема
Настраиваем агента Linux
Теперь рассмотрим процесс подключения новой машины к мониторингу. Установим агента Zabbix на сервер под управлением CentOS 7.
На самом деле мы это уже в какой-то мере уже сделали, т.к. на сервер Zabbix мы уже устанавливали пакет “zabbix-agent”. А в веб-интерфейсе мы уже видели собираемые данные о сервере.
Установку и конфигурирование начнем с самого главного - перейдем на страницу с выбором необходимой версии агента:
- Linux
- Версия 3.0
- Платформа AMD64
- Для версии Zabbix 4.0
На этой же странице будет ссылка с инструкцией по установке агента. В нашем случае она находится здесь.
Как и с установкой сервера, сначала рекомендую обновить компоненты системы, пакеты:
sudo yum update
Далее как и с сервером нужно добавить репозиторий.
# Добавляем репозиторийsudo rpm -Uvh https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm
Установим и сам пакет агента Zabbix, а после запустим его.
# Установка пакета агентаsudo yum install zabbix-agent# Запускаем агентsudo systemctl start zabbix-agent# Проверяем состояниеsudo systemctl status zabbix-agent
Запустили мы, конечно, рано, нужно еще сконфигурировать работу агента. Идем в файл ‘/etc/zabbix/zabbix_agentd.conf’ и изменяем три параметра:
- Hostname=<Имя хоста="" для="" Zabbix="">
- Server=<Имя или="" адрес="" Zabbix-сервера="">
- ServerActive=<Имя или="" адрес="" Zabbix-сервера="">
После этого перезапускаем агента:
# Перезапускаем агентаsudo systemctl restart zabbix-agent# Проверяем состояниеsudo systemctl status zabbix-agent
И проверяем логи работы агента. Возьмем последине 30 строк для анализа:
sudo tail -n 30 /var/log/zabbix/zabbix_agentd.log
Мы получим все что происходило при запуске агента. В нашем примере вывод был таким:
42693:20200905:172314.572 Starting Zabbix Agent [Zabbix server]. Zabbix 4.0.24 (revision 95be642769).42693:20200905:172314.572 **** Enabled features ****42693:20200905:172314.572 IPv6 support: YES42693:20200905:172314.572 TLS support: YES42693:20200905:172314.572 **************************42693:20200905:172314.572 using configuration file: /etc/zabbix/zabbix_agentd.conf42693:20200905:172314.572 agent #0 started [main process]42695:20200905:172314.573 agent #2 started [listener #1]42694:20200905:172314.574 agent #1 started [collector]42696:20200905:172314.574 agent #3 started [listener #2]42697:20200905:172314.575 agent #4 started [listener #3]42698:20200905:172314.576 agent #5 started [active checks #1]42698:20200905:172314.578 active check configuration update from [192.168.11.144:10051] started to fail (cannot connect to [[192.168.11.144]:10051]: [113] No route to host)
Мы сразу видим, что при запуске активных проверок появилась ошибка подключения (для моего окружения 192.168.11.144 - это адрес сервера Zabbix). Эта тема выходит за рамки этого материала, но Вы можете прочитать о пассивных и активных проверках самостоятельно.
Ошибка снова связана с настройками безопасности. Нужно открыть порт 10051 сервера Zabbix.
# Открываем порт 10051 на стороне сервераsudo firewall-cmd --zone=public --add-port=10051/tcp --permanent# Перезапускаемsudo firewall-cmd --reload# Проверяем применилось ли новое правилоiptables-save | grep 10051# Вывод будет примерно таким:# -A IN_public_allow -p tcp -m tcp --dport 10051 -m conntrack --ctstate NEW,UNTRACKED -j ACCEPT
Перезапускаем агента и проверяем лог.
# Перезапускаем агентаsudo systemctl restart zabbix-agent# Проверяем состояниеsudo systemctl status zabbix-agent# Проверяем что там в логахsudo tail -n 30 /var/log/zabbix/zabbix_agentd.log
В этот раз все отлично.
52725:20200905:175604.827 Starting Zabbix Agent [EDU-SRV-ZBX-02-VM]. Zabbix 4.0.24 (revision 95be642769).52725:20200905:175604.828 **** Enabled features ****52725:20200905:175604.828 IPv6 support: YES52725:20200905:175604.828 TLS support: YES52725:20200905:175604.828 **************************52725:20200905:175604.828 using configuration file: /etc/zabbix/zabbix_agentd.conf52725:20200905:175604.828 agent #0 started [main process]52727:20200905:175604.829 agent #2 started [listener #1]52726:20200905:175604.829 agent #1 started [collector]52728:20200905:175604.829 agent #3 started [listener #2]52729:20200905:175604.830 agent #4 started [listener #3]52730:20200905:175604.830 agent #5 started [active checks #1]
Дальше идем в веб-интерфейс и вручную добавим хост в список наблюдаемых. На продакшене обычно работает автообнаружение или добавление хостов скриптами, но у нас все по простому. Перейдем в “Configuration ➡️ Hosts ➡️ Create host”. На открытой форме заполняем:
- Host name - имя хоста. Должно совпадать с одноименным параметром на стороне агента (мы заполняли этот параметр выше)
- Groups - группы, к которым этот хост относится. Сейчас просто добавил его в “Linux servers”.
- IP address (или DNS имя) - название говорит само за себя. Это адрес или имя машины, на которой установлен агент, которую нужно мониторить.

Также на вкладке “Templates” (Шаблоны) выбираем шаблоны показателей, которые будем собирать. Сейчас просто выбрал шаблон стандартных метрик для Linux OS.

Сохраняем и видим список хостов, в котором есть сам Zabbix-сервер и только что добавленны элемент. Спустя небольшой промежуток времени мы увидим ошибку.

Ситуация, думаю, понятная. На клиентской машине нужно открыть порт 10050 для взаимодействия с сервером мониторинга. Делается это аналогичными командами как и для порта 10051 сервера выше.
# Открываем порт 10050 на стороне сервераsudo firewall-cmd --zone=public --add-port=10050/tcp --permanent# Перезапускаемsudo firewall-cmd --reload# Проверяем применилось ли новое правилоsudo iptables-save | grep 10050# Вывод будет примерно таким:# -A IN_public_allow -p tcp -m tcp --dport 10050 -m conntrack --ctstate NEW,UNTRACKED -j ACCEPT
Ждем немного времени и видим, что с соединением теперь все отлично.

Данные от агента поступают и все работает как надо. Дело сделано, мониторинг этой машины работает. Далее рассмотрим кратко установку агента на хост с операционной системой Windows.
Настраиваем агента Windows
Установка агента для Windows принципиально не отличается от той же установки для *.nix, которую мы рассмотрели выше:
- Тот же файл конфигурации агента
- Необходимо открывать те же порты на сервере и на машине с агентом
- Так же все описано в документации
Единственным отличием может быть синтаксис команд по настройке службы и правил брэндмауэра на стороне Windows. Их мы и опишем.
Сначала идем на страницу установки и выбора параметров. В нашем случае мы будем ставить агента на Windows Server 2012 для Zabbix 4.0. Вот эта конфигурация. Внизу страницы скачиваем предлагаемый клиент. Там же есть ссылка на документацию.
Скачиваем архив с приложением, распаковываем. Создаем каталог для приложения. Например: "C:\Program Files\ZabbixAgent". В этот каталог из скачанного архива переносим два файла:
- zabbix_agentd.exe - приложение агента.
- zabbix_agentd.conf - файл конфигурации агента.
В файле конфигурации делаем те же настройки, что и в примере для Linux. А дальше устанавливаем агент как службу и запускаем следующими командами, и не забываем открыть порт 10050 на стороне агента:
# Открываем порты со стороны агента Zabbix для Windowsnetsh advfirewall firewall add rule name="Open Zabbix agentd port 10050 inbound" dir=in action=allow protocol=TCP localport=10050netsh advfirewall firewall add rule name="Open Zabbix agentd port 10050 outbound" dir=out action=allow protocol=TCP localport=10050# Устанавливаем агента как службу и запускаем```powershellzabbix_agentd.exe --config zabbix_agentd.conf --installzabbix_agentd.exe --start# Проверяем состояние службыGet-Service *zabbix*# Пример вывода#Status Name DisplayName#------ ---- -----------#Running Zabbix Agent Zabbix Agent
Далее на всякий случай проверяем логи:
2324:20200905:185501.371 Starting Zabbix Agent [EDU-SRV-ZBX-03-VM]. Zabbix 4.0.24 (revision 95be642769).2324:20200905:185501.371 **** Enabled features ****2324:20200905:185501.371 IPv6 support: YES2324:20200905:185501.372 TLS support: NO2324:20200905:185501.372 **************************2324:20200905:185501.372 using configuration file: C:Program FilesZabbixAgentzabbix_agentd.conf2324:20200905:185501.386 agent #0 started [main process]2436:20200905:185501.387 agent #1 started [collector]2384:20200905:185501.387 agent #2 started [listener #1]1684:20200905:185501.387 agent #4 started [listener #3]2352:20200905:185501.387 agent #3 started [listener #2]1644:20200905:185501.387 agent #5 started [active checks #1]
И все готово. Если перейдем в веб-интерфейс Zabbix и добавим вручную хост (как и в примере выше, но с шаблоном для Windows), то через некоторое время увидим успешный сбор данных.
Подробнее информацию об установке агента на Windows можно также узнать в официальной документации.

Грандиозный успех!
Продолжение следует
В самом начале мы затронули вопрос что же такое мониторинг и какие инструменты для его реализации вообще есть. А дальше уже прошли процесс настройки сервера Zabbix с некоторыми нюансами и примерами решения частых проблем. Настроили брэндмауэр и SELinux, а после настроили и подключили агентов сбора данных на Linux и Windows хостах.
Не смотря на большой объем, на самом деле тема эта очень простая и не требует большого количества времени для изучения. Все что нужно - это один раз ознакомиться с документацией и попробовать использовать. После можно считать, что мониторинг Вам уже не страшен.
Надеюсь, что у Вас в компании он настроен и используется. Ведь иначе следить за состоянием работы инфраструктуры, информационных ситсем и других составных частей ИТ-ландшафта просто нереально. Обманывать себя проще, чем собирать объективные метрики.
В следующих публикациях мы коснемся тем использования прокси, создания собственных элементов данных, автообнаружения хостов, создание собственных шаблонов и использования существующих и много другого. Все что касается мониторинга только начинается.
Удачи в делах и вдохновения!