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 /home/host1867038/the-devops.ru/htdocs/www/wp-content/themes/fox/inc/blog.php:380 Stack trace: #0 /home/host1867038/the-devops.ru/htdocs/www/wp-content/themes/fox/widgets/latest-posts/widget.php(257): fox56_blog_grid(NULL, Array) #1 /home/host1867038/the-devops.ru/htdocs/www/wp-content/themes/fox/widgets/latest-posts/register.php(33): include('/home/host18670...') #2 /home/host1867038/the-devops.ru/htdocs/www/wp-includes/class-wp-widget.php(394): Wi_Widget_Latest_Posts->widget(Array, Array) #3 /home/host1867038/the-devops.ru/htdocs/www/wp-includes/widgets.php(837): WP_Widget->display_callback(Array, Array) #4 /home/host1867038/the-devops.ru/htdocs/www/wp-content/themes/fox/inc/single.php(417): dynamic_sidebar('sidebar') #5 /home/host1867038/the-devops.ru/htdocs/www/wp-content/themes/fox/inc/single.php(136): fox56_single_sidebar() #6 /home/host1867038/the-devops.ru/htdocs/www/wp-content/themes/fox/inc/single.php(7): fox56_single_inner() #7 /home/host1867038/the-devops.ru/htdocs/www/wp-content/themes/fox/single.php(23): fox56_single() #8 /home/host1867038/the-devops.ru/htdocs/www/wp-includes/template-loader.php(106): include('/home/host18670...') #9 /home/host1867038/the-devops.ru/htdocs/www/wp-blog-header.php(19): require_once('/home/host18670...') #10 /home/host1867038/the-devops.ru/htdocs/www/index.php(17): require('/home/host18670...') #11 {main} thrown in /home/host1867038/the-devops.ru/htdocs/www/wp-content/themes/fox/inc/blog.php on line 380