e Мониторинг серверов: как правильно отслеживать состояние серверов

Мониторинг серверов: 8 советов и антисоветов о том, как это делать

Представьте, что вы администрируете сервер крупной компании. Однажды утром ваш день начался не с кофе, а с десятка пропущенных звонков и писем от коллег и руководителей — оказалось, ночью сервер упал. Такое неприятное утро может грозить всем, кто не использует систему мониторинга. Рассказываем, почему важно мониторить серверы и каких ошибок стоит при этом избегать.

Сервер, не болей или Зачем нужен мониторинг

Сервер — довольно сложное техническое устройство. В отличие от какой-нибудь лампочки накаливания, которая просто работает, пока к ней поступает электричество, с состоянием сервера всё может быть не так просто. Например, он правильно отвечает на все запросы, но делает это крайне медленно из-за проблем с производительностью. И сбои могут возникать на физическом уровне, уровне операционной системы, веб-сервера или программного обеспечения, что приводит к широкому спектру проблемных сценариев.

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

— контроль над аппаратными компонентами сервера;

— предотвращение инцидентов;

— оперативное оповещение о проблемах и, как следствие, их быстрое решение;

— меньше затрат на ручные проверки правильного функционирования систем.

Мы рассмотрим несколько рекомендаций по мониторингу, которые помогут грамотно поддерживать работоспособность сервера.

Не советуем: делать собственное решение

Есть такое понятие, как «изобретать велосипед» — значит пытаться придумать что-то, что уже давно сделано и работает. И хотя вопрос «разрабатывать или покупать» часто возникает на фоне обоснованных дискуссий, поверьте, мониторинг сервера не входит в их число. Компании ведь обычно не делают свою собственную систему контроля версий, операционную систему или веб-сервер (если это, конечно, не GitHub, Microsoft или Nginx). Для мониторинга стоит выбирать надёжные и проверенные годами решения — например связку из Grafana (интерфейс визуализации) и ELK (агент, который обрабатывает метрики и логи сервера). Из других популярных систем можно рассмотреть Prometheus, Netdata, InfluxData.

Советуем: визуализировать состояние серверов

Как только вы выбрали готовый инструмент мониторинга, нужно понять, что он вам даст. Вы должны получить чёткое наглядное представление ключевых данных, отражающих состояние сервера.

Система мониторинга немного напоминает приборную панель автомобиля, где есть как важные показатели: скорость, уровень топлива, обороты двигателя и тому подобное; так и ряд индикаторов, которые сообщают о возникающих проблемах. Это позволяет быстрее понять, в чём причина поломки, и принять верное решение. Поэтому убедитесь, что мониторинг вашего сервера включает в себя упорядоченное визуальное представление о состоянии сервера.

Не советуем: проводить визуальный мониторинг при авариях

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

И здесь важно понять один момент: вся информация наглядно представлена на панели мониторинга, но это не означает, что любой может посмотреть на неё и сразу понять причину сбоя. Тратить время на поиск проблемы — куда менее эффективно, чем сразу же узнать, в чём именно она состоит. Поэтому визуальный мониторинг — это полезно, но не в тех ситуациях, когда нужно срочно что-то чинить. И чтобы понять, как быстрее получить нужные данные в случае аварии, мы переходим к следующему совету.

Советуем: сделать подробные автоматические оповещения

Оповещения — очень эффективный способ контролировать серверы. Но оповещение оповещению рознь.

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

— серьёзность проблемы;

— последствия (какие сервисы затронуты);

— изменения каких показателей привели к проблеме;

— что должен делать человек, получивший предупреждение (желательно со ссылкой на инструкцию).

Также стоит выбрать правильный канал для оповещений: например e-mail, сообщения в мессенджерах или какие-либо другие виды уведомлений. При этом надо учитывать, как часто ответственные люди проверяют почту/мессенджеры и насколько быстро они среагируют на проблему. Если правильно настроить оповещения, у вас будет гораздо больше шансов быстрее устранять все сбои.

Не советуем: думать, что нет оповещений = нет ошибок

Да, здесь правило «нет новостей — хорошие новости» не работает. Любая система рано или поздно сталкивается с проблемами разной степени тяжести. Поэтому если в течение нескольких недель вам не пришло ни одного оповещения от системы мониторинга, есть повод забеспокоиться. Возможно, вы неправильно настроили метрики или не подключили к системе какие-либо важные параметры.

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

Советуем: постоянно улучшать мониторинг

Мониторинг сервера решает много проблем, но этого может быть недостаточно. Система присылает вам сообщения об ошибках, но она вряд ли объяснит, почему они возникли и как их исправить. Для этого всё ещё нужно вмешательство специалиста.

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

Не советуем: использовать слишком простые метрики

Не дайте себя одурачить чрезмерно упрощёнными метриками сервера. Чтобы понять, что это такое, рассмотрим гипотетический пример.

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

Оказалось, что на практике 90 из 100 поступающих запросов API обрабатывает за 0,5 секунды, но для остальных 10 требуется по 20 секунд на каждый. Это приводит к тому, что среднее время обработки составляет 2,45 секунды, и вы не получаете никаких оповещений о проблемах. Хотя 10% пользователей совершенно недовольны работой вашего сервиса.

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

Советуем: доверить мониторинг специалистам

Если вы не уверены на 100%, что сможете самостоятельно справиться с настройкой системы мониторинга, доверьте эту задачу специалистам — грамотному системному администратору или вашему хостинг-провайдеру. Например, в REG.RU сейчас доступен бесплатный (на время β-тестирования) онлайн-мониторинг Dedicated-серверов. Система server monitoring отслеживает нагрузку сервера, состояние дисков и сетевую активность, а также присылает оповещения о возникающих проблемах.

⌘⌘⌘

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


По мотивам: "Server monitoring best practices: 9 dos and don'ts"

Похожие публикации

Аутсорсинг VS собственное производство одежды: опыт бренда кроссовок

Один способ позволяет отслеживать каждую деталь изделия, другой – сфокусироваться на брендинге и маркетинге. Разбираемся…

14 минут назад

Как сократить затраты на инфраструктуру в два раза: опыт ИТ-компании Ctrl2GO

Рассказываем, как помогли российскому разработчику систем аналитики мигрировать в частное облако и сократить затраты на…

6 часов назад

Каким должен быть сайт-визитка для эксперта

Рассказываем, как создать сайт-визитку и какой должна быть структура. Внутри — инструкция, которая поможет предпринимателям.

5 дней назад

Как продвигать бизнес с помощью геосервисов

Онлайн-карты — хорошая площадка для привлечения аудитории в бизнес. Рассказываем об инструментах продвижения в геосервисах.

6 дней назад

Как открыть своё digital-агентство

Можно стартовать с багажом знаний из найма или практически без опыта. Рассказываем, что нужно делать:…

6 дней назад

Что такое Data Science и кто такой Data Scientist

Что такое наука о данных, чем занимается Data Scientist и можно ли обучиться этой специальности…

1 неделя назад