User Tools

Site Tools


zabbix._мониторинг_it_инфраструктуры_предприятия_2023

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
zabbix._мониторинг_it_инфраструктуры_предприятия_2023 [2024/02/29 07:36]
val removed
— (current)
Line 1: Line 1:
-====== Zabbix. Мониторинг IT инфраструктуры предприятия 2023 ====== 
  
-===== Цель обновления ===== 
- 
-  - Оптимизировать программу 
-  - Мониторинг Linux/​Windows рабочих станций 
-===== Ссылка на вебинар ===== 
- 
-===== Программа курса ===== 
- 
-===== Модуль 0. Подготовка стенда в классе ===== 
- 
-  * Узнать свой номер стенда 
-  * Удалить виртуалки (сделано) 
-  * Удалить профили putty (сделано) 
-  * Отключить не используемые адаптеры (сделано) 
-  * Настроить VirtualBox Host-Only Ethernet Adapter на адрес 192.168.X.29/​255.255.255.0 (будет сделано) 
-  * Записать логин пароль и IP (сообщить преподавателю) рабочей станции (сделано) 
-  * Проверить наличие дистрибутивов и образов (будет сделано) 
- 
-===== Модуль 1: Развертывание IT инфраструктуры предприятия ===== 
- 
-==== Теория ==== 
- 
-  * [[http://​ru.wikipedia.org/​wiki/​Управление_компьютерной_сетью|Управление компьютерной сетью]] 
- 
-==== Лабораторные работы:​ Развертывание объектов мониторинга ==== 
- 
-Настраиваем необходимый для мониторинга минимум из курса [[Администрирование сервисов UNIX]] 
- 
-=== 1.1 Схема стенда,​ импорт,​ настройка и запуск VM gate и server === 
- 
-  * Для локальной сети использовать VirtualBox Host-Only Ethernet Adapter (понадобится в лабораторной работе про простые проверки) 
- 
-<​code>​ 
-Запустите с правами Administrator 
- 
-C:​\cmder\Cmder.exe 
- 
-λ bash 
- 
-λ cd 
- 
-λ git clone http://​val.bmstu.ru/​unix/​conf.git 
- 
-λ cd conf/​virtualbox/​ 
- 
-!!! 5 - это номер курса, вместо X укажите Ваш номер стенда,​ если не помните,​ спросите преподавателя !!! 
- 
-λ ./setup.sh X 5 
-</​code>​ 
- 
-=== 1.2 Настройка сети VM gate и server === 
- 
-  * [[Настройка стендов слушателей#​Настройка виртуальных систем Unix]] с использованием [[Настройка стендов слушателей#​Скрипты автоконфигурации]] 
- 
-  * gate 
-<​code>​ 
-# sh net_gate.sh 
- 
-# init 6 
-</​code>​ 
- 
-  * server 
-<​code>​ 
-# sh net_server.sh 
- 
-# init 6 
-</​code>​ 
- 
-  * Создать в Putty профили gate, server и подключиться 
- 
-=== 1.3 настройка сервисов DNS и DHCP === 
- 
-  * [[Сервис DHCP]] (понадобится в лабораторной работе про LLD) 
-<​code>​ 
-gate:~# sh conf/​dhcp.sh 
-</​code>​ 
- 
-  * [[Финальная настройка DNS сервера]] (понадобится в лабораторной работе про простые проверки) 
-<​code>​ 
-server:~# sh conf/dns.sh 
-</​code>​ 
- 
-  * Настройка клиента DNS на gate и server 
-<​code>​ 
-# cat /​etc/​resolv.conf 
-</​code><​code>​ 
-search corpX.un 
-nameserver 192.168.X.10 
-</​code><​code>​ 
-# nslookup ns 
-</​code>​ 
- 
-  * Импорт и запуск систем Linux client1 ([[Настройка сети в Linux#​Динамическая настройка параметров]]) и Windows client2 
-===== Модуль 2: Установка компонентов Zabbix ===== 
- 
-==== Теория ==== 
- 
-  * [[https://​ru.wikipedia.org/​wiki/​Zabbix|Zabbix - Википедия]] 
-  * [[https://​www.zabbix.com/​life_cycle_and_release_policy|Zabbix Life Cycle & Release Policy]] 
-  * [[https://​www.zabbix.com/​documentation/​4.0/​ru/​manual/​introduction/​overview|Zabbix Documentation - Архитектура Zabbix]] 
-  * [[https://​www.zabbix.com/​documentation/​4.0/​ru/​manual/​web_interface/​frontend_sections|Zabbix Documentation - Разделы веб-интерфейса]] 
-  * [[https://​www.zabbix.com/​documentation/​4.0/​ru/​manual/​config/​hosts|Zabbix Documentation - Узлы сети и группы узлов сети]] 
-==== Лабораторные работы:​ Развертывание компонентов Zabbix ==== 
- 
-  * [[Переменные окружения#​Установка переменных окружения]] http_proxy 
- 
-  * [[Выбор дистрибутива Linux]] или его определение 
-  * [[Сервис MySQL]] 
- 
-  * [[https://​www.zabbix.com/​download|Download and install Zabbix]] 
-  * Подключение к frontend для [[Сервис Zabbix#​Настройка мониторинга]] 
- 
-  * [[Сервис Zabbix#​Мониторинг с использованием Zabbix agents]] (выполнить в модуле 4) 
- 
- 
-==== Вопросы ==== 
- 
-  - Какие СУБД используются для хранения данных в Zabbix? 
-  - Какая версия Zabbix поддерживается в течении долгого времени?​ 
-  - Какой веб сервер может использоваться для работы Zabbix Frontend? 
-  - Для каких задач используется Zabbix Frontend? 
-  - Для каких задач используется Zabbix Server? 
-  - Что содержит пакет zabbix-sql-scripts?​ 
-  - На каком языке программирования написан Zabbix Frontend? 
-  - На каком языке программирования написан Zabbix Server? 
- 
-===== Модуль 3: Базовые сущности Zabbix ===== 
- 
-==== Теория ==== 
- 
-  * Сравнение с [[Сервис MRTG]], [[Сервис Cacti]] и [[Сервис Nagios]] 
-  * [[https://​www.zabbix.com/​documentation/​4.0/​ru/​manual/​config/​hosts|Zabbix Documentation - Узлы сети и группы узлов сети]] 
-  * [[https://​www.zabbix.com/​documentation/​4.0/​ru/​manual/​config/​items|Zabbix Documentation - Элементы данных]] 
-  * [[https://​www.zabbix.com/​documentation/​4.0/​ru/​manual/​config/​items/​history_and_trends|Zabbix Documentation - История и динамика изменений]] 
-  * [[https://​www.zabbix.com/​documentation/​4.0/​ru/​manual/​config/​items/​itemtypes/​simple_checks|Zabbix Documentation - Простые проверки]] 
-  * [[https://​www.zabbix.com/​documentation/​4.0/​ru/​manual/​web_monitoring|Zabbix Documentation - Веб-мониторинг]] 
-  * [[https://​www.zabbix.com/​documentation/​4.0/​ru/​manual/​config/​triggers|Zabbix Documentation - Триггеры]] 
-  * [[https://​www.zabbix.com/​documentation/​4.0/​ru/​manual/​config/​triggers/​expression|Zabbix Documentation - Выражение триггера]] 
-  * [[https://​www.zabbix.com/​documentation/​4.0/​ru/​manual/​config/​triggers/​dependencies|Zabbix Documentation - Зависимости триггеров]] 
-  * [[https://​www.zabbix.com/​documentation/​4.0/​ru/​manual/​config/​visualisation/​graphs/​custom|Zabbix Documentation - Пользовательские графики]] 
- 
-==== Лабораторные работы:​ Базовые элементы процесса мониторинга ==== 
- 
-=== 3.1 Простые проверки в Zabbix === 
- 
-  * Добавление узла (host) ya.ru и группы External Hosts 
-<​code>​ 
-Host name: ya.ru 
-  ЛЮБОЙ ИНТЕРФЕЙС:​ DNS ya.ru 
-  New group: External Hosts 
-</​code>​ 
- 
-  * Настройка элемента типа "​[[Сервис Zabbix#​Простые проверки]]"​ отзывчивости https://​ya.ru 
- 
-  * Визуализация данных 
-<​code>​ 
-Monitoring->​Hosts->​Latest data 
-  ya.ru->​check perf http ya.ru 
-  Zoom: 1h 
-</​code>​ 
- 
-  * Удаляем узел (можно оставить,​ для сравнения с конечным результатом в конце курса) "​Zabbix server"​ и создаем новый server.corpX.un с адресом 127.0.0.1 и любым интерфейсом 
-  * Преподаватель демонстрирует возможность сгруппировать простые проверки внешних систем в общем узле на примере [[Сервис Zabbix#​Простые проверки]] доступности системы gate.isp.un и сервиса RDP на admin/host windows через server.corpX.un 
- 
-=== 3.2 Web сценарии === 
- 
-  * Используя [[Сервис Ansible]] разворачиваем почтовый сервер 
-<​code>​ 
-server# ansible-playbook conf/​ansible/​roles/​mail.yml 
-</​code>​ 
- 
-  * [[https://​youtu.be/​yy1T2bDMy54|Вебинар:​ Zabbix - мониторинг Web приложений]] 
- 
-=== 3.3 Триггеры в Zabbix === 
- 
-  * Преподаватель демонстрирует [[Сервис Zabbix#​Настройка триггеров]] уведомляющего о недоступности gate.isp.un и rdp сервиса 
-  * [[Сервис Zabbix#​Настройка триггеров]] уведомляющего о недоступности ya.ru (обсудить использование встроенных макросов в именах триггеров и вернуться к этому вопросу в модуле 4 при клонировании ya.ru в val.bmstu.ru 
- 
-  * Эмуляция сбоя 
-<​code>​ 
-gate:~# ifdown eth1 
-</​code>​ 
- 
-  * Отчет о проблемах 
- 
-<​code>​ 
-Monitoring->​Triggers 
-  или 
-Monitoring->​Problems 
-</​code>​ 
- 
-  * Преподаватель демонстрирует возможность настроить зависимость триггеров на примере недоступности gate.isp.un/​ya.ru 
- 
-<​code>​ 
-gate:~# ifup eth1 
-</​code>​ 
- 
-  * Обсуждение [[Сервис Zabbix#​Пример триггера основанного на значении элемента в течении периода]],​ уведомляющего о ухудшении качества доступа ([[Сервис QOS]]) в Интернет на основании повышения среднего времени ответа за период 
- 
-==== Вопросы ==== 
- 
-  - Для чего используются объекты Hosts в Zabbix? 
-  - Для чего используются объекты Items в Zabbix? 
-  - Для чего используются объекты Triggers в Zabbix? 
-  - Какие атрибуты помечены как обязательные при создании Host в Zabbix? 
-  - Какие интерфейсы для взаимодействия с узлами поддерживает Zabbix? 
-  - Перечислите обязательные атрибуты Items в Zabbix? 
-  - Есть ли возможность осуществлять мониторинг системы,​ не имеющей поддерживаемых Zabbix интерфейсов?​ 
-  - Какого типа Items используется для проверок ICMP Echo 
-  - Откуда берется адрес целевой системы,​ если он не указан явно в элементе типа Simple Check? 
-  - Какие значения хранятся в Трендах?​ 
-  - За какой период рассчитываются значения Трендов? ​ 
-  - Какие атрибуты помечены как обязательные при создании Trigger в Zabbix? 
-  - Что следует использовать для уменьшения количества сообщений системы мониторинга в случае сбоев больших коммутационных узлов? 
-  - Какие возможности,​ по сравнению с net.tcp.service.perf[http] предоставляют Web сценарии?​ 
-  - Где описываются Items в Web сценарии?​ 
-  - Можно ли мониторить работоспособность неуправляемого коммутатора?​ 
- 
-===== Модуль 4: Использование шаблонов ===== 
- 
-==== Теория ==== 
- 
-  
-  * [[https://​www.zabbix.com/​documentation/​4.2/​ru/​manual/​config/​items/​itemtypes/​zabbix_agent|Zabbix Documentation - Zabbix агент]] 
-  * [[https://​www.zabbix.com/​documentation/​4.0/​ru/​manual/​config/​macros|Zabbix Documentation - Макросы]] 
-  * [[https://​www.zabbix.com/​documentation/​4.0/​ru/​manual/​config/​templates|Zabbix Documentation - Шаблоны]] 
- 
-==== Лабораторные работы:​ Управление конфигурацией с помощью шаблонов ==== 
- 
-=== 4.1 Клонирование узлов (хостов) === 
- 
-  * Создать узел val.bmstu.ru через Full Clone узла ya.ru (обратить внимание на использование {HOST.NAME} в именах триггеров) 
- 
-=== 4.2 Использование zabbix agent для сбора метрик === 
- 
-  * Установка zabbix agent на gate ([[Сервис Zabbix#​Мониторинг с использованием Zabbix agents]]) ​ 
- 
-=== 4.3 Использование готовых шаблонов === 
- 
-  * Обзор шаблона "Linux by Zabbix agent" (выяснить,​ куда делось наследование шаблонов и кто знает про agent.ping из "​Zabbix agent"​) 
-  * Добавление узла gate.corpX.un в мониторинг и применение к нему шаблона "Linux by Zabbix agent" 
-  * Преподаватель демонстрирует вариант безопасного подключения к агенту с использованием механизма PSK (лучше в конце 7-го модуля) 
-  * [[Сервис Zabbix#​Мониторинг с использованием Zabbix agents]] на server.corpX.un - комментируем или исправляем Hostname=server.corpX.un и добавляем к нему шаблон "Linux by Zabbix agent" (лучше в конце курса, что бы было проще видеть свои items) 
-  * Обзор шаблона "​Zabbix server health"​ и применение его к узлу server.corpX.un (лучше в конце курса) ​ 
- 
-=== 4.4 Создание шаблона на основе существующего === 
- 
-  * [[Сервис Zabbix#​Создание своих шаблонов]] на основе "SSH Service"​ с добавлением макроса,​ определяющего порт сервиса 
-  * Назначаем шаблон узлу gate.corpX.un (и, при желании,​ server.corpX.un) 
- 
-  * Переопределяем значение макроса {$SSH_PORT},​ указав значение,​ например,​ 2222 для узла gate.corpX.un и ждем (рассчитать время) срабатывания триггера 
-  * После срабатывания триггера,​ в ([[Сервис SSH#​Настройка ssh сервера]]) на gate указываем новый порт и перезапускаем сервис или, методически,​ проще использовать эти команды:​ 
-<​code>​ 
-gate# /​usr/​sbin/​sshd -p 2222 
- 
-gate# kill `cat /​var/​run/​sshd.pid` 
-</​code>​ 
-==== Вопросы ==== 
- 
-  - Чем Clone объекта Host отличается от Full Clone? 
-  - Для чего нужен Zabbix Agent? 
-  - Какой командой можно получить список метрик (ключей),​ возвращаемых zabbix agent? 
-  - Какой утилитой можно получить значения метрик (ключей) с zabbix agent 
-  - Какая метрика (ключ) zabbix agent используется для отображения статуса узла? 
-  - Перечислите варианты безопасного подключения между zabbix агентом и сервером?​ 
-  - Чем шаблоны лучше клонирования?​ 
-  - Что следует использовать в именах триггеров при описании их в шаблонах или при клонировании узлов? 
-  - Что можно использовать в качестве переменных в выражениях элементов?​ 
-  - Как работает переопределение и наследование макросов?​ 
-  - Какой синтаксис у built-in макросов?​ 
-  - Какой синтаксис у user-defined макросов?​ 
-  - Что произойдет с объектами узла, при изменении описывающего их шаблона?​ 
-  - Можно ли поменять параметры объекта узла, описанного шаблоном?​ 
-  - Если поменять параметры объекта узла, описанного шаблоном,​ а потом те же в шаблоне,​ какие значения будут в итоге? 
-  - Если поменять параметры объекта на уровне шаблона,​ а потом на уровне узла, какие значения будут в итоге? 
-===== Модуль 5: Управление учетными записями и уведомлениями ===== 
- 
-==== Теория ==== 
- 
-  * [[https://​www.zabbix.com/​documentation/​4.0/​ru/​manual/​config/​users_and_usergroups/​permissions|Zabbix Documentation - Права доступа]] 
-  * [[https://​www.zabbix.com/​documentation/​4.0/​ru/​manual/​config/​users_and_usergroups/​usergroup|Zabbix Documentation - Группы пользователей]] 
-  * [[https://​www.zabbix.com/​documentation/​4.0/​ru/​manual/​quickstart/​notification|Zabbix Documentation - Получение оповещения о проблеме]] 
-  * [[https://​ru.wikipedia.org/​wiki/​SMTP|Протокол SMTP]] 
-  * [[https://​www.zabbix.com/​documentation/​4.0/​ru/​manual/​web_interface/​user_profile/​sound|Zabbix Documentation - Звук в браузерах]] 
-==== Лабораторные работы:​ Настройка уведомлений о событиях ==== 
- 
-=== 5.1 Добавление учетных записей администраторов === 
- 
-  * Создать учетную запись с login/alias student/​Pa$$w0rd#,​ Вашим ФИО и, с User role: [[https://​www.zabbix.com/​documentation/​6.0/​ru/​manual/​config/​users_and_usergroups/​permissions|"​Zabbix Super Admin"​]] 
-  * Включить student в группу "​Zabbix administrators"​ (см. следующий пункт) 
- 
-=== 5.2 Настройка уведомлений о событиях === 
- 
-  * Продемонстрировать на преподавательском стенде звуковые уведомления в браузере (в настройках профиля) 
-  * [[Сервис Zabbix#​Настройка уведомлений о событиях]] (Email, XMPP, PSTN) 
- 
-<​code>​ 
-http://​192.168.X.10/​mail/​ 
-</​code>​ 
- 
-  * Reports->​Action log 
-  * Можно создать группу "Don t disturb"​ и переместить в нее пользователя Admin, что бы Zabbix не пытался отправить ему сообщения 
-  * [[https://​youtu.be/​XYeVj1unjfc|Мастер класс: Zabbix Вам позвонит и расскажет...]] 
- 
- 
-=== 5.3 Добавление учетных записей сотрудников службы поддержки === 
- 
-Задание на дом:​) ​ 
- 
-  * Создать группу "​Zabbix responsible"​ 
-  * Назначить группе "​Zabbix responsible"​ права на чтение элементов групп Linux servers и/или External Hosts (!!! это нужно и для получение уведомлений о срабатывании триггеров этих узлов) 
-  * Настроить Trigger Action "​Zabbix responsible notification"​ для уведомлений пользователей группы "​Zabbix responsible"​ 
-  * Создать учетную запись user1/​Pa$$w0rd1 с Role: "User role" и включить его в группу "​Zabbix responsible"​ 
-  * user1 должен иметь права на просмотр результатов мониторинга через Web интерфейс и должен получать уведомления по электронной почте ([[Управление учетными записями в Linux#​Добавление учетной записи]]). 
- 
-=== 5.4 Настройка публичного доступа к информации в Zabbix === 
- 
-  * !!! Сделать в 11-м модуле 
- 
-  * Пользователя guest убрать из группы Disabled 
-  * Настроить Read-only доступ к объекту (Например,​ к карте [[http://​server/​zabbix/​zabbix.php?​action=map.view&​sysmapid=2]]) для группы Guests или сделать объект Public 
-  * Предоставить группе Guests права на чтение элементов объектов мониторинга (сделать отдельную группу Public info и включить в нее узлы, элементы которых будут доступны публично) 
- 
-==== Вопросы ==== 
- 
-  - Укажите все шаги, необходимые для оправки уведомлений пользователям Zabbix ​ 
-  - Роль Guest, User, Admin, SuperAdmin позволяет ... 
-  - Как может быть использовано членство в группе Zabbix? 
-  - Укажите все типы (Type) отправки уведомлений в Zabbix 
-  - Для чего нужны права на группы узлов пользователям Zabbix? 
-  - Где можно посмотреть,​ какие уведомления были отправлены Zabbix? 
-  - Права какого пользователя используются в Zabbix при подключении к его интерфейсу без авторизации?​ 
- 
-===== Модуль 6: Внешние проверки и пользовательские параметры ===== 
- 
-==== Теория ==== 
- 
-  * [[https://​www.zabbix.com/​documentation/​4.0/​ru/​manual/​config/​items/​itemtypes/​external|Zabbix Documentation - Внешние проверки]] 
-  * [[https://​www.zabbix.com/​documentation/​4.0/​ru/​manual/​config/​items/​userparameters|Zabbix Documentation - Пользовательские параметры]] 
-  * [[https://​www.zabbix.com/​documentation/​4.0/​ru/​manual/​config/​items/​itemtypes/​calculated|Zabbix Documentation - Вычисляемые элементы данных]] 
-==== Лабораторные работы:​ Мониторинг с использование внешних программ/​скриптов ==== 
- 
-=== 6.1 Варианты получения результатов из внешних программ/​скриптов на zabbix сервере === 
- 
-Демонстрирует преподаватель 
- 
-  * [[Сервис Zabbix#​Внешние проверки]] 
-  * [[Сервис Zabbix#​Пример простого скрипта]] (на этапе добавления элемента тестируем с разным количеством итераций до появления Timeout) 
- 
-Делаем все, но не запускаем))) 
- 
-  * [[Сервис speedtest]] - пример задачи,​ требующей значительного времени выполнения 
-  * Решение:​ [[Сервис Zabbix#​Элементы типа trapper]] (ловушки :) 
- 
-=== 6.2 Варианты получения результатов из внешних программ/​скриптов на удаленных узлах === 
- 
-Демонстрирует преподаватель (сделаем качественнее в следующем модуле) 
- 
-  * [[Сервис DHCP#​Статистика DHCP сервера]] 
-  * Обсудить [[Сервис Zabbix#​Пример запуска скрипта на удаленной системе]] с использованием SSH 
-  * [[Сервис Zabbix#​Использование UserParameter]] в zabbix-agent для получения результатов из внешних приложений,​ на примере мониторинга количества выданных ip сервисом DHCP 
-  * Используем [[Сервис DHCP#​Поиск посторонних DHCP серверов]] для проверки 
- 
-==== Вопросы ==== 
- 
-  - Какое ограничение накладывает Zabbix server на выполнение внешних скриптов?​ 
-  - Какое ограничение накладывает Zabbix agent на выполнение внешних скриптов?​ 
-  - Какой синтаксис UserParameter позволяет указать произвольное число аргументов?​ 
-  - На что влияет UnsafeUserParameters?​ 
-  - Какие варианты имеются для запуска скриптов на удаленных системах из Zabbix? 
-  - Как можно передать в Zabbix результаты,​ получаемые в течении длительного времени?​ 
-===== Модуль 7: Низкоуровневое обнаружение (LLD) ===== 
- 
-==== Теория ==== 
- 
-  * [[https://​www.zabbix.com/​documentation/​4.2/​ru/​manual/​discovery/​low_level_discovery|Zabbix Documentation. Низкоуровневое обнаружение]] 
-  * [[https://​habr.com/​ru/​post/​377757/​|Мониторинг производительности дисковой подсистемы при помощи zabbix и block stat]] 
-  * [[https://​github.com/​grundic/​zabbix-disk-performance|github grundic/​zabbix-disk-performance]] 
-  * [[https://​www.zabbix.com/​documentation/​4.0/​ru/​manual/​regular_expressions|Zabbix Documentation - Регулярные выражения]] 
-  * Формат [[https://​ru.wikipedia.org/​wiki/​JSON|JSON]] 
-  * Формат [[https://​ru.wikipedia.org/​wiki/​XML|XML]] 
- 
-  *   * [[https://​youtu.be/​MEdVvZU18ek|Самый простой,​ но очень полезный пример использования низкоуровнего обнаружения (LLD) в Zabbix]] 
- 
-==== Лабораторные работы:​ Управление конфигурацией с помощью шаблонов и LLD ==== 
- 
-=== 7.1 Знакомство с LLD === 
- 
-  * [[Сервис Zabbix#​Low-Level Discovery (LLD)]] 
-<​code>​ 
-Configuration->​Hosts->​gate.corpX.un 
-  ->​Discovery rules 
-    ->Block devices discovery: ... 
-    ->​Mounted filesystem discovery: ... 
-    ->​Network interface discovery: ... 
-</​code>​ 
- 
-Фильтрация элементов 
- 
-Zabbix <= 4 
-<​code>​ 
-Administration->​General->​Regular expressions 
-</​code>​ 
- 
-Zabbix >= 5 - унаследованные макросы ({$VFS.FS.FSTYPE.MATCHES},​ например) 
- 
-=== 7.2 Использование LLD для учета статистики выданных адресов по DHCP в множестве подсетей === 
- 
-  * Методическая рекомендация - удалить узел gate.corpX.un и добавить его заново,​ после создания нового шаблона 
- 
-Демонстрирует преподаватель 
- 
-  * Добавление подсетей (LAN2-eth2-VBox Внутренняя сеть) в сервис DHCP (можно после создания и применения шаблона) 
-<​code>​ 
-gate# cat /​etc/​network/​interfaces 
- 
-gate# ifup eth2 
- 
-gate# cat /​etc/​default/​isc-dhcp-server 
- 
-gate# cat /​etc/​dhcp/​dhcpd.conf 
- 
-gate# service isc-dhcp-server restart 
-</​code>​ 
- 
-  * Разработки шаблона,​ использующего LLD для учета [[Сервис Zabbix#​Статистика DHCP сервера]] в множестве подсетей 
-  * Экспорт шаблона ([[Сервис Zabbix#​Экспорт/​импорт в XML]]), размещение его и всего необходимого в, например,​ [[Сервис Git#​github.com]] 
- 
-  * Импорт инструкции и всего необходимого для развертывания 
- 
-<​code>​ 
-gate# git clone https://​github.com/​valbmsturu/​zabbix_dhcp_pools.git 
- 
-gate# cd zabbix_dhcp_pools/​ 
- 
-gate# ./​install.sh 
- 
- 
-server# apt install jq 
- 
-server# zabbix_get -s gate -k dhcp.pools.discovery | jq 
- 
-server# zabbix_get -s gate -k dhcp.pools.shared-network[LAN1,​used] 
-</​code>​ 
- 
-  * Импорт шаблона [[https://​github.com/​valbmsturu/​zabbix_dhcp_pools]] 
-==== Вопросы ==== 
- 
-  - В каком формате должен возвращать данные элемент ​ discovery? 
-  - Какой синтаксис у low-level discovery макросов?​ 
-  - Перечислите форматы,​ используемые для импорта/​экспорта объектов Zabbix? 
-  - Придумайте свои варианты задач, при которых может понадобиться LLD. 
-  - Как можно отфильтровать только нужные элементы в процессе discovery? 
- 
-===== Модуль 8: Автоматическая регистрация и инвентаризация компьютеров ===== 
- 
-==== Теория ==== 
- 
-  * [[https://​www.zabbix.com/​documentation/​4.0/​ru/​manual/​config/​hosts/​inventory|Zabbix Documentation - Инвентарные данные]] 
-  * Варианты использования zabbix-agent в режиме active 
-  * [[https://​www.zabbix.com/​documentation/​4.0/​ru/​manual/​appendix/​install/​windows_agent|Zabbix Documentation - агент на Microsoft Windows]] 
-  * [[https://​www.zabbix.com/​documentation/​4.0/​ru/​manual/​appendix/​items/​activepassive|Zabbix Documentation - Пассивные и активные проверки агента]] 
-  * [[https://​www.zabbix.com/​documentation/​4.0/​ru/​manual/​discovery/​auto_registration|Авторегистрация активных агентов]] 
-==== Лабораторные работы:​ Мониторинг и инвентаризация систем с динамическими адресами ==== 
- 
-=== 8.1 Установка агента на Windows client === 
- 
-  * Потребуется [[Chrome]] для [[Сервис Zabbix#​Установка агента в Windows]] 
- 
-  * Для редактирования конфигурации потребуется установить [[https://​val.bmstu.ru/​unix/​npp.6.4.2.Installer.exe|nodepad++]],​ запустить сразу после инсталляции (будет/​нужен с правами Администратора) и открыть файл C:\Program Files\Zabbix Agent\zabbix_agentd.conf 
- 
-=== 8.2 Установка агента на Linux client === 
- 
-  * [[Инсталяция системы в конфигурации Desktop]] (для вывода списка Desktop ПО, без thunderbird) 
-  * [[Сервис Zabbix#​Мониторинг с использованием Zabbix agents]], можно через [[Сервис Ansible]] 
- 
-=== 8.3 Проблемы мониторинга рабочих станций Linux и Window === 
- 
-  * Windows firewall, не хотим настраивать исключения. 
-  * Может измениться IP адрес (для демонстрации можно сменить mac адрес) 
-  * LLD использует имя системы,​ и, если его нет в DNS - не работает,​ согласно записям в журнале:​ 
-<​code>​ 
-# grep 192.168.X.102 /​var/​log/​zabbix/​zabbix_server.log 
-... 
-12202:​20190605:​125020.551 cannot send list of active checks to "​192.168.X.102":​ host [CLIENT1] not found 
-... 
-</​code>​ 
- 
-=== 8.4 Использование активного режима агента === 
- 
-  * [[https://​support.zabbix.com/​browse/​ZBXNEXT-5088|Set Agent icon color to green on getting "​active"​ data]] 
- 
-  * Создаем Host группы Linux clients и Windows clients ​ 
-  * [[Сервис Zabbix#​Настройка авторегистрации систем с агентами,​ работающими в активном режиме]] 
-  * [[Сервис Zabbix#​Настройка агента на активный режим]] 
- 
-=== 8.5 Получение списка ПО на Linux и Windows === 
- 
-  * Демонстрирует преподаватель [[Сервис Zabbix#​Использование UserParameter]] 
-<​code>​ 
-server# zabbix_get -s 192.168.X.1NN -p 10050 -k listinstalledsoft 
-</​code>​ 
- 
-=== 8.6 Настройка инвентаризации === 
- 
-  * Разработка шаблона "​Template OS Windows list installed soft Active"​ с элементом listinstalledsoft,​ заполняющим инвентарное поле "​Software (Full details)"​ и триггером,​ информирующем об изменении состава установленного ПО, используя [[Сервис Zabbix#​Пример с текстовым элементом]] 
-<​code>​ 
-conf/​zabbix/​zabbix/​Template_OS_Windows_list_installed_soft_Active_5.xml ​ 
-</​code>​ 
-(!!! не смотря на название,​ подходит для Linux :) 
- 
-  * Сравнение списков ПО с помощью [[Сервис Zabbix#​Добавление информации о значении элемента в сообщение]] 
- 
-  * На уровне шаблона Linux by Zabbix agent (+ windows + active) настроить Total memory -> Populates host inventory field: Hardware 
-==== Вопросы ==== 
- 
-  - Чем отличается активный режим от пассивного в Zabbix агенте?​ 
-  - Что означают директивы Server, ServerActive,​ StartAgents в конфигурации Zabbix агента?​ 
-  - Перечислите обязательные действия при авто регистрации узлов? 
-  - Как отличить рабочие станции Linux от Windows при авто регистрации?​ 
-  - Придумайте варианты конфигураций сети, при которых необходимо использовать активный режим агента Zabbix 
- 
-===== Модуль 9: Мониторинг систем по протоколу SNMP ===== 
- 
-==== Теория ==== 
- 
-  * [[https://​ru.wikipedia.org/​wiki/​SNMP|Протокол SNMP - Wikipedia]] 
-  * [[https://​www.zabbix.com/​documentation/​1.8/​ru/​manual/​auto-discovery|Zabbix Documentation - Обнаружение]] 
-  * [[https://​www.zabbix.com/​documentation/​3.0/​ru/​manual/​distributed_monitoring/​proxies|Zabbix Documentation - Прокси]] 
- 
-==== Лабораторные работы:​ Мониторинг сетевого оборудования ==== 
- 
-=== 9.1 Развертывание сетевого оборудования с поддержкой SNMP === 
- 
-Демонстрирует преподаватель 
- 
-  * Используются [[Материалы по GNS]] и фрагменты курса [[Linux. Мониторинг оборудования и интеграция с Cisco]] 
-<​code>​ 
-configure terminal 
- 
-hostname routerN 
-interface FastEthernet0/​0 
- ip address 172.16.1.19N 255.255.255.0 
- ​duplex full 
- no shutdown 
- 
-ip route 0.0.0.0 0.0.0.0 172.16.1.254 
- 
-ip name-server 172.16.1.254 
-ip domain-name isp.un 
-ip domain-lookup 
- 
-snmp-server community public RO 
-end 
- 
-copy running-config startup-config 
- 
- 
-</​code>​ 
- 
-=== 9.2 Настройка интерфейса SNMP в системах === 
- 
-  * Обсуждение на примере [[Communigate Pro#​Использование интерфейса SNMP для мониторинга]] Communigate Pro 
- 
-=== 9.3 Настройка мониторинга систем по протоколу SNMP в zabbix === 
- 
-  * [[Сервис SNMP#​Установка пакета net-snmp]] на client2 для знакомства с [[Сервис SNMP#​Варианты использования snmp консоли в режиме чтения]] 
- 
-Демонстрирует преподаватель (для ускорения демонстрации уменьшить интервалы времени до 1 минуты) 
- 
-  * [[Сервис Zabbix#​Мониторинг по протоколу SNMP]] системы router1.isp.un ​ 
- 
-=== 9.4 Автоматический поиск и добавление устройств в Zabbix === 
-  
-  * Преподаватель удаляет router1.isp.un из Zabbix 
-  * [[Сервис Zabbix#​Автоматическое добавление]] 
-  * Обсудить Preprocessing для элементов Interface Fa0/0(): Bits sent 
- 
-=== 9.5 Использование Zabbix proxy для решения проблем с доступом к объектам мониторинга === 
- 
-!!!Работает с задержкой!!! 
- 
-<​code>​ 
-configure terminal 
- 
-no ip route 0.0.0.0 0.0.0.0 172.16.1.254 
-</​code>​ 
- 
-  * [[Сервис Zabbix#​Установка и запуск proxy]] на gate 
-  * [[Сервис Zabbix#​Добавление proxy в zabbix server]] 
-==== Вопросы ==== 
- 
-  - Что необходимо добавить в систему с Zabbix Server или Proxy для мониторинга оборудования по протоколу SNMP с использованием имен OID в текстовом формате?​ 
-  - В чем отличие процесса автоматического добавления оборудования в этой лабораторной работе от варианта с активным агентом?​ 
-  - Для каких задач используется Zabbix Proxy? 
-  - В каком режиме работает Zabbix Proxy по умолчанию?​ 
-  - Придумайте свои варианты задач, при которых может понадобиться Zabbix Proxy 
- 
- 
-===== Модуль 10: Zabbix API ===== 
- 
-==== Теория ==== 
- 
-  * [[https://​ru.wikipedia.org/​wiki/​JSON|Материал из Википедии. JSON]] 
-  * [[https://​www.zabbix.com/​documentation/​1.8/​ru/​api/​getting_started|Zabbix Documentation - Начало работы с Zabbix API]] 
-  * [[https://​www.zabbix.com/​documentation/​4.0/​ru/​manual/​api|Zabbix Documentation - API]] 
-  * [[https://​www.zabbix.com/​documentation/​4.0/​ru/​manual/​api/​reference|Zabbix Documentation - Справочник методов]] 
-  * [[https://​www.zabbix.com/​forum/​zabbix-troubleshooting-and-problems/​36900-api-key-lifetime|api key lifetime]] 
-==== Лабораторные работы:​ Пример задачи,​ использующей Zabbix API ==== 
- 
-=== 10.1 Подключение и аутентификация === 
- 
-  *  [[Сервис Zabbix#​Аутентификация]] 
- 
-=== 10.2 Примеры запросов на чтение информации о настройках объектов мониторинга === 
- 
-  * [[Сервис Zabbix#​Работа с объектами host/​template]] 
-  * [[Сервис Zabbix#​Доступ к результатам мониторинга]] 
- 
-=== 10.3 Пример изменения конфигурации объектов мониторинга через Zabbix API === 
- 
-  * !!! Методически,​ лучше в 11-м модуле 
- 
-  * [[Сервис Zabbix#​Оформление запросов в виде BASH скриптов]] 
-  * [[Сервис Zabbix#​Получение списка карт и их элементов из Zabbix]] 
-  * [[Сервис Zabbix#​Пример изменения конфигурации через Zabbix API]] 
- 
-=== 10.4 Пример практического использования технологии === 
- 
-  * [[Zabbix - построение топологии сети]] 
-==== Вопросы ==== 
- 
-  - Можно ли использовать Zabbix API для получения результатов мониторинга?​ 
-  - Можно ли использовать Zabbix API для управления конфигурацией?​ 
-  - Что необходимо получить перед выполнением запросов к Zabbix API? 
-  - Для получения токена доступа используется метод ...  
-  - Для получения списка узлов используется метод ... 
-  - Для получения данных мониторинга используется метод ... 
-  - Для модификации свойств объекта Zabbix используется метод ... 
-  - user.login host.get history.get map.update 
- 
-===== Модуль 11: Дополнительные возможности визуализации результатов мониторинга в Zabbix ===== 
- 
-==== Теория ==== 
- 
-  * [[https://​www.zabbix.com/​documentation/​4.0/​ru/​manual/​config/​visualisation/​maps/​map|Zabbix Documentation - Настройка карты сети]] 
-  * [[https://​www.zabbix.com/​documentation/​4.0/​ru/​manual/​config/​visualisation/​screens|Zabbix Documentation - Комплексные экраны]] 
-  * [[https://​www.zabbix.com/​documentation/​4.0/​ru/​manual/​web_interface/​frontend_sections/​monitoring/​dashboard|Zabbix Documentation - ПАНЕЛЬ]] 
-==== Лабораторные работы ==== 
- 
-=== 11.1 Использование карт === 
- 
-  * Создать новую карту Name: ISP (w:300, h:600), и добавить два элемента 
-<​code>​ 
-Icon: Cloud(96) 
-Label: ISP 
- 
-Host: gate.corpX.un ​ 
-Label: {HOST.CONN} 
-</​code> ​ 
- 
-  * Через Ctrl выделить элементы,​ добавить Link и подписать его значениями трафика 
- 
-<​code>​ 
-Zabbix <=5 
- 
-Out: {gate.corpX.un:​net.if.out["​eth1"​].last()} 
-In: {gate.corpX.un:​net.if.in["​eth1"​].last()} 
-Download: {server.corpX.un:​speedtest.download.last()} 
-Upload: {server.corpX.un:​speedtest.upload.last()} 
-</​code><​code>​ 
-Zabbix >=6 
- 
-Out: {?​last(/​gate.corpX.un/​net.if.out["​eth1"​])} 
-In: {?​last(/​gate.corpX.un/​net.if.in["​eth1"​])} 
-Download: {?​last(/​server.corpX.un/​speedtest.download)} 
-Upload: {?​last(/​server.corpX.un/​speedtest.upload)} 
-</​code>​ 
- 
-  * Предоставить публичный доступ к карте 
- 
-=== 11.2 Использование панелей (Dashboard) === 
- 
-  * Обзор возможностей в панели "​Zabbix server health"​ 
-  * Создать виджет "Inet Access"​ 
-  * Добавить в него Map: "​ISP1"​ 
-  * Добавить в него Graph(classic):​ ISP1 Network Traffic -> ISP1 gate.corpX.un:​ Interface eth1: Network traffic 
-  * Вместо создания классического [[Сервис Zabbix#​Пользовательские графики]] отображающего скорость интернет канала,​ добавить в него Graph: "ISP1 Speed",​ два Data set: server.corpX.un -> speedtest ... и Time period: From now-1d 
-  * Cделать панель публичной (три черточки в правом верхнем углу -> Sharing) 
-===== Модуль 12: Обновление Zabbix ===== 
- 
-  * [[Сервис Zabbix#​Обновление Zabbix]] 
-  * [[Сервис Zabbix#​Установка и запуск сервера]] новой версии 
- 
-<​code>​ 
-# systemctl restart zabbix-server.service 
- 
-# tail -f /​var/​log/​zabbix/​zabbix_server.log 
-</​code><​code>​ 
-... 
-443024:​20221228:​113625.301 current database version (mandatory/​optional):​ 06000000/​06000017 
-443024:​20221228:​113625.301 required mandatory version: 06020000 
-443024:​20221228:​113625.301 optional patches were found 
-443024:​20221228:​113625.301 starting automatic database upgrade 
-443024:​20221228:​113625.306 completed 0% of database upgrade 
-443024:​20221228:​113625.372 completed 1% of database upgrade 
-... 
-443024:​20221228:​113637.733 completed 100% of database upgrade 
-443024:​20221228:​113637.734 database upgrade fully completed 
-... 
-</​code>​