Назад | Перейти на главную страницу

"Что случается?" монитор производительности сервера

После просмотра ветки о программном обеспечении для мониторинга серверов я задаю простой вопрос:

Какой из инструментов мониторинга серверов использовать для автоматического обнаружения «нештатных» ситуаций с рекомендациями по их устранению?

Я ищу программное обеспечение, которое проверяет производительность системы после установки и вычисляет некоторые средние значения нагрузки (память, процессор и т. Д.). И когда что-то происходит (загрузка процессора увеличивается до 20%), он пытается определить причину этого. Если это apache, он должен проверить журналы доступа. Если mysql, он должен проверить журналы mysql и сказать мне, что происходит. Это потому, что какой-то пользователь декодирует много изображений, я хотел бы знать, какая команда выполняется, когда и имя пользователя. То же самое для использования диска, памяти, количества процессов, потоков и так далее.

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

Другими словами, я ищу программное обеспечение, которое будет поддерживать мой простой сервер Debian / Apache / PHP / MySQL, не заставляя меня ежедневно отслеживать графики.

Подобных программ существует множество, следует отметить, что вы должны запускать их на другом хосте, иначе у вас есть высокий риск не получить уведомление, если что-то пойдет не так.

В качестве примера мы используем комбинацию nagios (обрабатывает весь мониторинг и оповещения, другими словами, он отвечает за то, чтобы разбудить кого-то, когда есть необходимость в том, чтобы оператор что-то смотрел) и cacti (может также делать оповещения, но мы просто использовать его для сбора и агрегирования различных показателей, от сетевого трафика до загрузки системы и статистики спама по электронной почте).

Когда придет время, когда вы получите предупреждение (от nagios cacti zabbix, что угодно), наличие некоторых данных о производительности для просмотра (cacti, zabbix, другие будут делать это), как правило, поможет вам определить, в чем проблема.

В обычном стеке LAMP, в котором вы описываете две наиболее распространенные проблемные ситуации (по крайней мере, по моему опыту), это HTTP или SQL-сервер, который не отвечает вообще или в разумное время (зонд nagios проверит это) или средняя загрузка система становится ужасно высокой.

Эти две проверки, вероятно, позволят выявить 95% ваших проблем, но есть много других вещей, на которые вы должны обратить внимание - примеры:

  1. apache, постоянно работающий с максимальным количеством настроенных вами процессов / потоков, означает, что ваш сервер не справляется с нагрузкой.
  2. система работает "нормально", но с отказавшим диском в RAID (вы не знаете, как часто подобные вещи остаются незамеченными в течение месяцев - или, по крайней мере, до следующего отказа диска;)

Почти все продукты, которые вы найдете вокруг, смогут отслеживать / отображать все, что вы можете им бросить, вы обычно можете расширить их с помощью простых сценариев оболочки, коротких программ и многого другого, в дополнение к их включенным инструментам и повсеместному SNMP. .

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

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

Удачи!

Zabbix Решение для мониторинга может отслеживать все, что вы хотите, и соответственно запускать действия. Действия могут быть, например, выполнением сценария, который обрабатывает журналы и при необходимости отправляет результат. Также вы можете инициировать действие при выполнении одного или нескольких условий (например, вывод сценария анализа журнала, показывающий ошибку и загрузку процессора более чем на 40%).

Opsview - это полностью интегрированный инструмент мониторинга, который включает в себя популярное программное обеспечение с открытым исходным кодом, включая Nagios Core, Nagvis, Net-SNMP и RRDtool.

Веб-платформа Catalyst предоставляет расширяемый пользовательский интерфейс для мониторинга и настройки. Программное обеспечение сервера Opsview работает на Linux и Solaris 10. Оно будет контролировать все распространенные операционные системы, включая Linux, AIX, Solaris и Windows.

Используя тысячи доступных плагинов Nagios, Opsview может контролировать практически любое устройство, систему или программный компонент.

Opview рассматривает все аспекты вашей ИТ-среды, включая то, как они работают с вашими бизнес-процессами.

Установка Nagios

Nagios - это монитор хоста и служб, предназначенный для информирования вас о сетевых проблемах до того, как это сделают ваши клиенты, конечные пользователи или менеджеры. Он был разработан для работы под операционной системой Linux, но также отлично работает с большинством вариантов. Демон мониторинга выполняет периодические проверки указанных вами хостов и служб, используя внешние плагины, которые возвращают информацию о состоянии в Nagios. При возникновении проблем демон может отправлять уведомления административным контактам различными способами (электронная почта, мгновенное сообщение, SMS и т. Д.). Установка Nagios на вашем сервере поможет повысить надежность вашего сервера.

Nagios имеет множество функций, что делает его очень мощным инструментом мониторинга. Некоторые из основных функций перечислены ниже: Мониторинг сетевых служб (SMTP, POP3, HTTP, NNTP, PING и т. Д.) Мониторинг ресурсов хоста (загрузка процессора, использование диска и памяти, запущенные процессы, файлы журналов и т. Д.) Мониторинг факторов окружающей среды, таких как температура. Запланированное время простоя для подавления уведомлений хоста и служб во время плановых отключений. Простой дизайн плагина, который позволяет пользователям легко разрабатывать собственные проверки хостов и служб. недоступны и недоступны. Поддержка реализации избыточных и распределенных серверов мониторинга. Возможность подтверждения проблем через веб-интерфейс. Уведомления о контактах при возникновении и устранении проблем службы или хоста (по электронной почте, пейджеру или другим способом, определяемым пользователем). и сервисные уведомления для различных групп контактов Возможность определять обработчики событий, которые будут запускаться во время обслуживания или хоста события для упреждающего решения проблем Внешний командный интерфейс, который позволяет на лету вносить изменения в поведение мониторинга и уведомлений с помощью обработчиков событий, веб-интерфейса и сторонних приложений. Сохранение статуса хоста и службы при перезапуске программы.

Посмотри на Ядро Зеносса, бесплатное и очень универсальное программное обеспечение для мониторинга, которое многие компании используют для мониторинга своих сетей. Легко настроить и начать работу.

Встроено много типов мониторинга и предупреждений, включая графики истории. Для его расширения можно установить так называемые ZenPacks. Также могут быть добавлены плагины Nagios.

Это может быть именно то, что вам нужно.