Г Л А В А
7
Мониторинг
информационной
системы
Для предотвращения возможных отказов информационной системы администрато-
ру нужно производить регулярный ее мониторинг. Сама эта операция весьма
рутинна, а вот анализ получаемой информации требует высокой квалификации.
Ничего интересного в мониторинге нет, но, увы, производить его нужно. В этой
главе будут рассмотрены основные методы и средства мониторинга информацион-
ной системы.
Основные способы мониторинга
Существует несколько способов мониторинга информационной системы. На не-
больших предприятиях, насчитывающих совсем немного серверов, как правило,
производится анализ сообщений в журналах системы.
На предприятиях среднего и крупного размера для контроля активного оборудова-
ния применяется протокол SNMP (Simple Network Management Protocol). Конечно,
протокол SNMP может применяться и
на малых предприятиях, если будет куплено
активное оборудование с поддержкой этого протокола. Вот только цена такого
оборудования столь высока, что малые компании наверняка откажутся его приоб-
ретать, да и целесообразности для них в нем нет.
На предприятиях крупного размера применяются, как правило, специальные аген-
ты, устанавливаемые на каждый сервер, на каждую рабочую станцию. Такие аген-
ты собирают информацию о работе системы и передают ее на сервер.
В этом разделе мы приведем краткие характеристики основных способов монито-
ринга, а затем рассмотрим их более подробно.
Журналы системы и программ
Система и приложения записывают в журналы сведения об основных событиях.
Можно сказать, что основной способ мониторинга
работы системы и приложе-
ний — это анализ содержимого журналов.
302
Глава 7
В Windows — это журналы системы и безопасности, а также журналы приложений.
В Linux все журналы находятся в каталоге
/var/log
. Системный журнал Linux созда-
ется или специальным демоном syslogd, или самой системой инициализации (в бо-
лее современных дистрибутивах). Далее мы поговорим об этом подробнее.
Протокол SNMP
Протокол SNMP позволяет контролировать оборудование информационных сис-
тем. Конечно, далеко не все оборудование поддерживает SNMP. Бюджетные
устройства, предназначенные для небольших компаний, оснащены только про-
стейшими
веб-интерфейсами управления, которые позволяют увидеть лишь общую
информацию о состоянии системы. В самом лучшем случае можно настроить опо-
вещение по электронной почте — это будет вершина функционала мониторинга
таких устройств. А вот устройства с поддержкой SNMP, как уже отмечалось, стоят
дорого, и для небольших компаний их приобретение себя не оправдает.
Опрос служб
Есть еще один способ,
который не был упомянут ранее, — опрос служб. Он заклю-
чается в том, что администратор периодически отправляет запросы серверу или
серверам и опрашивает работу необходимых ему служб. Например, можно telnet’ом
«подцепиться» к 80-му порту — если ответ получен, значит, веб-сервер работает.
Можно отправить тестовый SQL-запрос к базе данных — что-либо простое и без-
обидное, главное — получить ответ. Если ответ получен, значит, сервер баз данных
работает.
Конечно, если серверов много, а контролировать их
доступность нужно постоянно,
лучше всего написать небольшой сценарий, — скажем, на PHP, и обеспечить его
регулярное выполнение средствами демона-планировщика cron или аналогичного
(в Windows можно создать так называемую
задачу
).
Основное преимущество этого способа — невмешательство в контролируемые сис-
темы. На них не придется устанавливать какое-либо программное обеспечение, а
один запрос, скажем, в час не перегрузит ваши серверы. Основной недостаток —
подобное решение придется реализовывать вручную, и потребуются некоторые на-
выки программирования. Гуру программирования
для этого быть не нужно, но ос-
новы надо знать. Если вы заинтересовались именно таким решением, рекомендуем
книгу Д. Колисниченко «PHP и MySQL. Разработка Web-приложений, 6-е изд.» из-
дательства «БХВ-Петербург»
1
. В ней вы найдете все необходимые знания для реа-
лизации этого решения.
Конечно, необязательно подобное решение писать на PHP. Можно использовать
и другие языки программирования, например Python. Но одно из преимуществ PHP
в случае, если на вашем предприятии эксплуатируется
сервер баз данных, — нали-
чие модулей поддержки различных СУБД: от MySQL до Oracle.
1
См.
http://www.bhv.ru/books/book.php?id=197791
.
Мониторинг информационной системы
303
Мониторинг с использованием агентов
Этот способ заключается в следующем: на каждую машину устанавливается про-
грамма-агент, которая выполняет проверки по заданному графику (график или
задается вручную при настройке клиента, или поступает с сервера мониторинга).
Результаты проверки передаются на сервер мониторинга. Далее администратор,
используя панель управления системы мониторинга, контролирует состояние тех
или иных узлов сети.
Преимущество такого способа контроля заключается в том, что наблюдению дос-
тупны практически любые
параметры как оборудования, так и программной среды.
Недостатки — необходимость предварительной установки агентов и затраты про-
изводительности на их исполнение (эта производительность отнимается от основ-
ных задач, для которых и установлен сервер). В зависимости от числа проверок, их
частоты, производительности контролируемой системы и т. п. накладные затраты
могут достигать величины 3–5% и более.
Из бесплатных OpenSource-решений можно порекомендовать систему мониторинга
Zabbix (
http://www.zabbix.com/ru/
). Ее сервер мониторинга работает под управле-
нием Linux, а вот агенты имеются для всех платформ, кроме macOS: Windows,
Linux, FreeBSD, OpenBSD, Solaris, HP-UX, AIX и др. На рис. 7.1 изображена панель
управления Zabbix.
Рис. 7.1.
Панель управления Zabbix