Zabbix: настройка мониторинга — элементы данных (items), графики (graphs), шаблоны (teamplates) | RTFM – администрирование, настройка серверов FreeBSD, Linux

Статья последний раз была обновлена 04.03.2023


05 Окт 13 Zabbix: настройка мониторинга — элементы данных (items), графики (graphs), шаблоны (teamplates)

В предыдущей статье CentOS: установка, настройка Zabbix-agent и добавление нового хоста в мониторинг мы добавили новый хост в систему мониторинга, которую установили по статье CentOS: установка сервера мониторинга Zabbix.

Теперь пора заняться настройкой того, что именно мы хотим мониторить.

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

В статье будет показано как:

  • создавать группы хостов;
  • создавать шаблоны целей мониторинга;
  • создавать элементы данных;
  • создавать группы элементов данных;
  • создавать графики.

Когда я первый раз столкнулся с Zabbix-ом — то первое время путался в определениях, принятых в этой системе. Поэтому — отдельно несколько слов о принятых в ней именах объектов.

Шаблон (teamplate) — это объект, содержащий в себе несколько элементов данных (items), каждый из которых включает в себя определённые ключи (keys), по которым выполняется проверка хоста.

Кроме того, в шаблон можно включить:

  • группы элементов данных (applications) — по сути — тот же шаблон, но хранящий в себе только элементы данных (items);
  • триггеры (triggers) — объект, обрабатывающий полученную информацию от элементов данных и на основе этой информации оценивающий состояние элемента хоста (например — состояние виртуальной памяти, или нагрузку на процессор) и, в зависимости от настройки, определяющий «важность» события;
  • графики (graphs) — визуализированное представление полученной от элементов данных информации;
  • комплексные экраны (screens) — несколько объектов, сгруппированных для отображения на одной странице — графики, карты сети, состояние триггеров, простая текстовая информация.

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

Приступим к созданию шаблона.

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

CPU — общая нагрузка на сервер ( load avarage ); количество процессов;

Memory — доступная и занятая физическая/виртуальная память;Filesystem — доступное и занятое место на жестком диске сервера, скорость чтения с/на диски;Network — количество полученной/переданной информации в байтах, количество пакетов, количество ошибок, счётчики «сброшенных» пакетов.

Особенный интерес (для автора, по крайней мере) представляет мониторинг Java, но примеры его настройки будут позже и в другой статье. Потом можно будет добавить отдельный шаблон, который будет включать в себя набор объектов мониторинга Java-приложений и этот шаблон подключить к наблюдаемому хосту. Другой вариант — добавить отдельную группу элементов данных, которую можно будет включить в создаваемый сейчас шаблон.

Теперь создадим новую группу хостов, для которой мы будем применять наш шаблон.

Переходим в раздел Configuration > Host groups, справа вверху нажимаем кнопку Create host group:

Задаём имя новой группе и определяем какие сервера будут  к ней относится (это можно сделать позже, оставив группу пустой):

После нажатия кнопки Save мы возвращаемся к списку имеющихся групп, и видим созданную нами:

В колонке Members указаны хосты, состоящие в этой группе. Но поле Teampletes содержит (0) подключенных к этой группе шаблонов. Перейдём к созданию шаблона — Configuration > Teamplates, справа вверху нажимаем Create teamplate:

Заполняем поля Name (Имя шаблона), Visible name (Отображаемое имя), какая группа хостов и сервера будут связаны с этим шаблонов:

Во вкладке Linked teamplates можно выбрать уже существующие шаблоны, которые будут связаны с этим, но мы этого делать не будем, а создадим полностью новый шаблон.

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

Приступим к созданию своих групп элементов данных, которые будут относится к нашему шаблону:

Кликаем по Applications:

На следующей странице видим что No applications defined и нажимаем Create application:

Начнём с набора для мониторинга CPU. Так как уже существует стандартная группа CPU, во избежание путаницы зададим имя, связанное с именем шаблона:

Жмём Save, возвращаемся в окно со списком имеющихся групп элементов данных:

Таким же образом создадим группы Memory_LMS, Network_LMS, Filesystem_LMS:

Теперь время приступить к самой интересной части — созданию непосредственно самих элементов данных. Кликаем на Items:

В следующем окне видим, что список элементов пустой и нажимаем Create item:

Остановимcя подробнее на этом моменте.

Host — имя хоста, группы хостов, шаблона или группы шаблонов, к которым будет принадлежать этот элемент;

Name — собственно, имя элемента; Type — тип элемента, к которому будет он будет принадлежать, в данном случае — Zabbix agent (именно он будет собирать необходимые данные для этого элемента); Keyключ элемента, по которому будет определяться получаемая элементом данных информация. Очень удобно использовать стандартные ключи, нажав кнопку Select; Type of information — тип получаемых данных. Если сомневаетесь какой именно использовать — можно посмотреть на этой странице>>>, или в уже имеющихся элементах — например в шаблоне Template OS Linux имеется элемент Processor load (1 min average per core). Кликнув на нём — получите исходные данные, такие как ключ и тип информации:

Так же очень полезная опция — импорт существующего элемента. Для этого — в списке элементов отметьте необходимый, и слева внизу выберите Copy selected to:

В следующем окне выбираем группу, в которую мы хотим копировать элемент:

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

Units — специальное значение для обработки полученных данных перед их отображением, подробнее тут>>>;

Applications — к какой группе элементов данных будет относиться новый элемент; Description — опционально, просто описание элемента; Status — статус элемента после добавления.

Заполняем необходимые данные для нашего элемента. К примеру — создадим элемент, отслеживающий общее количество процессов:

Теперь у нас есть два элемента данных. Попробуем их визуализировать, что бы посмотреть что происходит на сервере. Нажимаем Graphs, что бы перейти к созданию графиков и на следующей странице выбираем Create graph:

Заполняем Name и подключаем элементы данных, которые будут отображаться в этом графике:

Посмотрим, что у нас получилось. Переходим в Monitoring > Graphs, выбираем Group, Host и созданный нами график:

На скриншоте видно, что  присутствует уже готовый триггер, который скопировался вместе с элементом данных Processor load.

Но настройка триггеров — тема для отдельной статьи.

Что бы продемонстрировать график лучше — установим утилиту cpuburn :

1 # yum -y  install cpuburn

И запустим её что бы увеличить нагрузку:

1 # for i in {1..2}; do burnK7 & done
2 [3] 9501
3 [4] 9502

Ждём некоторое время и смотрим на график ещё раз:

Теперь картина видна лучше.

В целом, на этом создание  шаблона, элементов данных и графиков для сервера Zabbix можно считать выполненными.

В следующий раз приступим к настройке JMX-мониторинга и созданию/редактированию триггеров.

CentOS: установка сервера мониторинга Zabbix

http://rtfm.co.ua/zabbix-nastrojka-monitoringa-elementy-dannyx-items-grafiki-graphs-shablony-teamplates/