0

practicum

Зачем нужен мониторинг. Yandex Monitoring

26.04.2022

Мониторинг — это контроль за характеристиками системы, меняющимися со временем. Это могут быть трафик сайта, утилизация памяти или ресурсов процессора и т.д. Такие характеристики называются метриками. Их изменение отслеживают для того, чтобы они не выходили за границы приемлемых значений. Например, если загруженность процессора близка к 100%, то стоит нарастить вычислительные ресурсы.Задачи мониторинга — хранить и визуализировать метрики в реальном времени, а также оповещать пользователя, если что-то пошло не так.

Нужен ли вам мониторинг

Единственно верный ответ — да, мониторинг нужен всегда. Без мониторинга невозможно построить надежное приложение или сервис.

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

В Yandex.Cloud есть собственный инструмент для мониторинга облачной инфраструктуры и размещённых в ней сервисов — Yandex Monitoring.

Обзор Yandex Monitoring

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

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

В Yandex Monitoring есть готовые дашборды для облачных сервисов — виртуальных машин, балансировщиков, кластеров Managed Kubernetes и других. Сервисные дашборды не надо настраивать, они работают из коробки.

image

Когда вы наводите указатель мыши на какой-то график на дашборде, всплывает окно со значением метки.

image

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

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

Выгрузка и загрузка метрик

Вы можете использовать метрики Yandex.Cloud в другом сервисе или приложении. Для этого их выгружают в файл. И наоборот, в Yandex Cloud Monitoring можно загружать метрики из других приложений и сервисов, чтобы было удобнее контролировать их работу без переключения на разные дашборды. Подробнее мы рассмотрим эти кейсы в практических работах.За загрузку метрик отвечает агент для поставки метрик  Yandex Unified Agent.

Хранение метрик и удаление устаревших метрик

Как мы уже говорили, системные метрики автоматически собираются со всех активных ресурсов Yandex.Cloud. После удаления ресурса сбор метрик с него прекращается, но уже собранные метрики не удаляются сразу, а хранятся в течение 30 дней.

Например, если вы удалили виртуальную машину 1 августа, то её метрики будут доступны в Yandex Monitoring до 31 августа.Любые системные метрики, для которых новые значения не поступали в течение 30 дней, считаются устаревшими. Такие метрики автоматически удаляются из Yandex Monitoring раз в сутки.Например, даже если вы не удаляли виртуальную машину, а просто остановили её и не запускали в течение месяца, то собранные для неё метрики будут удалены.

Автоматическое удаление затрагивает только системные метрики и не распространяется на пользовательские.

Свежие комментарии

Подписка

Лучшие статьи


Fatal error: Uncaught Error: Call to a member function have_posts() on null in /var/www/u2359781/data/www/the-devops.ru/wp-content/themes/fox/inc/blog.php:376 Stack trace: #0 /var/www/u2359781/data/www/the-devops.ru/wp-content/themes/fox/widgets/latest-posts/widget.php(257): fox56_blog_grid(NULL, Array) #1 /var/www/u2359781/data/www/the-devops.ru/wp-content/themes/fox/widgets/latest-posts/register.php(33): include('/var/www/u23597...') #2 /var/www/u2359781/data/www/the-devops.ru/wp-includes/class-wp-widget.php(394): Wi_Widget_Latest_Posts->widget(Array, Array) #3 /var/www/u2359781/data/www/the-devops.ru/wp-includes/widgets.php(837): WP_Widget->display_callback(Array, Array) #4 /var/www/u2359781/data/www/the-devops.ru/wp-content/themes/fox/inc/single.php(412): dynamic_sidebar('sidebar') #5 /var/www/u2359781/data/www/the-devops.ru/wp-content/themes/fox/inc/single.php(134): fox56_single_sidebar() #6 /var/www/u2359781/data/www/the-devops.ru/wp-content/themes/fox/inc/single.php(6): fox56_single_inner() #7 /var/www/u2359781/data/www/the-devops.ru/wp-content/themes/fox/single.php(23): fox56_single() #8 /var/www/u2359781/data/www/the-devops.ru/wp-includes/template-loader.php(106): include('/var/www/u23597...') #9 /var/www/u2359781/data/www/the-devops.ru/wp-blog-header.php(19): require_once('/var/www/u23597...') #10 /var/www/u2359781/data/www/the-devops.ru/index.php(17): require('/var/www/u23597...') #11 {main} thrown in /var/www/u2359781/data/www/the-devops.ru/wp-content/themes/fox/inc/blog.php on line 376