Azure Monitor: можливості та обмеження

Сьогодні хотілося б з вами поділитися заміткою, яка з'явилася в результаті мого невеликого research на тему ключових особливостей Azure Monitor.

Можливості

Спираючись на Microsoft docs описати ключові можливості інструменту можна наступним чином:

  • route - streaming даних між сервісами і функціонал оповіщення;
  • store and arhive - сховище даних;
  • query - надання доступу до даних на читання;
  • visualize - візуалізація, подання та аналітика;
  • automate - автоматизація і тригери процесів (autoscale, email, webhook);

Представлене нижче зображення характерне для обчислюваних (виконуваних) ресурсів і відрізняється від незнаних лише наявністю Application Logs and metrics.

Activity log

Даний розділ моніторингу містить інформацію про операції, виконані в рамках конкретних компонентів (ресурсів):

  • Найменування (тип) операції;
  • Хто її ініціював і коли вона була завершена;
  • Статусі її виконання;

Крім того, надається можливості:

  • Експорт до Storage Account & Azure Event Hub;
  • Доступ за допомогою PowerShell & REST API;
  • Додавання правил сповіщення;
  • Аналізу в PowerBI;

Metrics and Events

Крім можливості відстежувати інформацію про метрики та події використовуваних компонентів Azure також доступне додавання власних custom metrics & events.

Якщо ми хочемо зробити дію засновану на значенні метрики, то в цьому нам допоможе система оповіщення і реагування, в арсеналі якої присутня можливість відправляти email повідомлення, викликати webhook або запускати logic app (за допомогою request trigger).

Log search

Завдяки log search і спеціалізованій мові запитів доступна можливість виконувати query/filter/aggregate застосовно до логів і метриків, а також візуалізувати підсумкові результати в необхідному вигляді (table, list, bar).

Autoscale

Горизонтальне масштабування засноване на наступі одного з двох видів умов:

  • На підставі метрики- наприклад, збільшити кількість запущених примірників того чи іншого ресурсу у разі перевищення використання% CPU або завантаження ОЗУ;
  • На підставі розпису - наприклад, якщо навантаження у вихідні дні знижується, то можна зменшувати і кількість примірників до необхідного мінімуму;

Azure Service Health

Завдяки такому компоненту як Azure Service Health з'являється можливість своєчасно дізнаватися про технічні роботи і збої в інфраструктурі Azure, які можуть торкнутися доступності розгорнутих у хмарі сервісів і ресурсів. Як оповіщення можуть виступати повідомлення поштою, телефоном або webhook.

Також з'являється можливість завчасно підготуватися до планового обслуговування Azure.

Обмеження

Затримка при надсиланні повідомлень про настання події - обмеженням це можна назвати досить умовно, однак, сповіщення про спрацювання того чи іншого правила буде отримано в інтервалі від однієї до п'яти хвилин.

Відсутнє вертикальне масштабування - на даний момент можлива зміна кількості запущених екземплярів (як у більшу, так і в меншу сторону), але не їх обчислювальних потужностей. Пов'язано це з накладеними на такий вид масштабування обмеженнями - можливі відсутність апаратних засобів і необхідність перезапуску.

Не всі Azure services на даний момент розміщують інформацію в Azure Monitor, однак, це буде реалізовано в майбутньому.

Термін зберігання metrics і activity log entry обмежений - він становить 30 і 90 днів відповідно (для більшої тривалості необхідно підключити Azure storage).

Ув'язнення

У висновку можна сказати, що розглянутий у цій статті інструмент дозволяє:

  • Однозначно відповісти хто, коли і які дії виконував застосовно до ресурсів або інфраструктури;
  • Отримати, проаналізувати та візуалізувати інформацію про виконані дії;
  • Додавати набір правил і дій для реагування при їх наступі;

Корисні посилання:

  1. Overview of Azure Monitor;
  2. Overview of the Azure Activity Log;
  3. Overview of metrics in Microsoft Azure;
  4. Overview of autoscale in Microsoft Azure;
  5. Azure Service Health overview;
  6. Supported Resource Types through Azure Resource Health;
  7. Azure Monitor videos;

COM_SPPAGEBUILDER_NO_ITEMS_FOUND