Microsoft AZ-305: Мониторинг, оптимизация затрат и эксплуатация — Руководство по подготовке
Часть Microsoft Azure Solutions Architect Expert AZ-305 — Руководство по подготовке. Практикуйтесь с проверенными ответами в центре экзаменов Microsoft, или пройдите тесты на время на ExamRoll.io.
Обзор
Надёжная архитектура мониторинга и эксплуатации Azure создаёт единую структуру телеметрии, эффективные оповещения, управляемые затраты и отчётность о соответствии для всего парка ресурсов. Решение охватывает метрики и журналы Azure Monitor, Log Analytics и Kusto Query Language (KQL), Application Insights для телеметрии приложений, а также операционное управление с помощью Azure Policy, Azure Resource Graph и Advisor. Контроль затрат обеспечивается с помощью Azure Cost Management, а надёжность платформы и осведомлённость об изменениях зависят от Azure Service Health. Azure Automation замыкает цикл с помощью повторяемых исправлений и оркестрации обновлений. Workbooks объединяют аналитические данные из этих служб для обеспечения операционной видимости.
Наблюдаемость с помощью Azure Monitor, Application Insights и Workbooks
Azure Monitor собирает телеметрию с платформы и рабочих нагрузок, сохраняя метрики временных рядов и данные журналов. Метрики — это легковесные значения, близкие к реальному времени, подходящие для отслеживания пороговых значений и SLO (например, CPU, частота ошибок HTTP 5xx). Журналы содержат структурированную телеметрию с возможностью запросов, которая поддерживает корреляцию и анализ первопричин. Проектируйте оповещения по метрикам для быстрого обнаружения симптомов и оповещения по журналам для более сложного обнаружения на основе условий с использованием KQL.
Группы действий (Action groups) отделяют обнаружение от реагирования. Свяжите их с отправкой email/SMS/голосовых сообщений, push-уведомлениями, защищёнными веб-перехватчиками, коннекторами ITSM, Azure Functions, Logic Apps и runbook-сценариями Azure Automation. Используйте отдельные группы действий для производственной и непроизводственной сред и применяйте графики подавления во время планового обслуживания. Направляйте оповещения в систему управления инцидентами с согласованными полезными данными, включая контекст ресурса и ссылки на runbook-сценарии.
Параметры диагностики (Diagnostic settings) обязательны для достижения полной видимости. Включите их на уровне ресурса, группы ресурсов и подписки для экспорта метрик и журналов ресурсов (например, Activity, Administrative, Policy, Security, NetworkSecurityGroupFlowEvent) в Log Analytics для выполнения запросов, в хранилище для холодного хранения и в Event Hubs для потоковой передачи в SIEM-системы. Всегда настраивайте параметр диагностики на уровне подписки для журнала действий (Activity Log), чтобы вы могли формировать отчёты о развёртываниях и оценках политик, а также создавать ежемесячные отчёты об изменениях.
Application Insights добавляет глубокую наблюдаемость приложений. Инструментируйте с помощью SDK или OpenTelemetry для распределённой трассировки, зависимостей, запросов, исключений и пользовательских событий. Используйте автоинструментацию в App Services, Functions, AKS и VM/VMSS через агент Azure Monitor, где это поддерживается, чтобы минимизировать изменения в коде. Тесты доступности (Availability tests) имитируют пользовательский трафик из нескольких регионов; настройте частоту, местоположения тестов, проверки SSL/HTTP и критерии успеха. Smart Detection использует встроенную аналитику для выявления аномальных паттернов, таких как внезапные всплески сбоев и снижение производительности. Сэмплирование (Sampling) контролирует приём данных и затраты, сохраняя при этом статистическую точность; применяйте адаптивное сэмплирование для динамического трафика или сэмплирование с фиксированной частотой для детерминированного анализа и исключайте из сэмплирования критически важные транзакции, где соответствие требованиям требует полного сбора данных.
Azure Monitor Workbooks предоставляют интерактивные параметризованные дашборды, которые объединяют метрики, журналы и сигналы о затратах в одном артефакте. Используйте параметры для подписки, региона, среды и временного диапазона, чтобы обеспечить возможность повторного использования в разных целевых зонах (landing zones). Сочетайте визуализации с описательным текстом для стандартизации операционных сценариев (playbooks) и инструкций (runbooks-on-a-page). Храните workbooks в группах ресурсов, применяйте RBAC для контролируемого доступа и создавайте шаблоны JSON для развёртываний в формате «инфраструктура как код».
Log Analytics и KQL в масштабе
Рабочая область Log Analytics (Log Analytics workspace) — это центральная точка агрегации для Azure Monitor Logs. Выберите региональную централизованную рабочую область в соответствии с требованиями к местонахождению данных или федеративную архитектуру с одной областью на каждую целевую зону, когда требуется строгий суверенитет данных или сегментация RBAC. Для крупных предприятий предпочитайте модель «центр-периферия» (hub-spoke) с общей рабочей областью (hub) и отдельными рабочими областями (spoke) для конфиденциальных или высоконагруженных доменов. Согласуйте планы таблиц с ценностью данных: используйте таблицы Analytics для ценных данных безопасности и операций; Basic Logs для подробных, но менее ценных журналов с доступом только для поиска; и Archive для долгосрочного, недорогого хранения с возможностью извлечения данных с помощью Search Jobs.
Правила сбора данных (Data Collection Rules, DCR) определяют, что собирает агент Azure Monitor (AMA), включая syslog/журналы событий, счётчики производительности, каналы событий Windows и пользовательские текстовые журналы. Используйте отдельные DCR для каждого типа ОС и роли и управляйте областью применения через VMSS, масштабируемые наборы и Azure Arc для гибридных сред. Для обеспечения управляемости и согласованности отдавайте предпочтение пользовательским таблицам на основе DCR, а не устаревшим API приёма данных.
Срок хранения (retention) должен балансировать между окном для расследований и затратами. Применяйте хранение для каждой таблицы отдельно: для «горячих» данных, используемых в повседневных операциях (например, 30–90 дней), и архивируйте «длинный хвост» данных (например, 6–24 месяца) для соответствия требованиям и поиска угроз. Отслеживайте объём принимаемых данных, самые «шумные» таблицы и применяйте сэмплирование или фильтрацию на уровне DCR, чтобы избежать сбора избыточных журналов. Используйте уровни обязательств (commitment tiers) для оптимизации затрат на приём данных, когда объём предсказуем.
KQL — это универсальный язык для операционных задач. Освойте фильтры (where), преобразования (extend, project), группировку по времени (bin/1m), агрегации (summarize by), объединения (inner/leftouter) и визуализацию (render timechart). Создавайте запланированные запросы для оповещений по журналам с контролем частоты срабатывания (throttling), разделением по измерениям (split-by) для оповещений с высокой кардинальностью и динамическими порогами для оповещений на основе базовых показателей. Материализованные представления и оптимизация производительности запросов (например, раннее отсечение неиспользуемых столбцов с помощью project-away, сужение временного окна) обеспечивают экономически эффективное выполнение запросов. Для отчётности по развёртываниям ARM запрашивайте данные из AzureActivity или истории изменений Azure Resource Graph, экспортированной в Log Analytics, и сопоставляйте их с событиями Policy для анализа управления.
Затраты, работоспособность, Advisor, Resource Graph и соответствие политикам
Azure Cost Management обеспечивает проактивное управление. Бюджеты, ограниченные областью действия подписок, групп ресурсов или групп управления, инициируют оповещения при достижении накопленных пороговых значений (например, 50%, 80%, 100%). Свяжите оповещения о бюджетах с группами действий для запуска Logic Apps или Functions, которые добавляют теги, уменьшают масштаб или даже помещают в карантин некритичные ресурсы. Используйте Cost Analysis для создания амортизированных представлений, группировки по тегам (центр затрат, владелец) и выявления аномалий по службам или регионам. Рекомендации по резервированиям (Reservation) и планам экономии (Savings Plan) показывают возможности для принятия обязательств по VM, SQL, Cosmos DB и другим службам. Оценивайте область действия покупки (одна подписка или общая), срок (1 или 3 года) и соответствие покрытия (гибкость в выборе размера экземпляра, Azure Hybrid Benefit).
Azure Advisor непрерывно оценивает подписки и ресурсы, выдавая приоритезированные рекомендации по категориям: затраты (оптимизация размеров, простаивающие ресурсы, резервирования), безопасность (через Defender for Cloud), надежность (избыточность между зонами, состояние резервного копирования/восстановления), производительность (масштабирование, рекомендации по SKU) и операционное совершенство (гигиена тегов, внедрение политик). Отслеживайте показатель Advisor Score для количественной оценки состояния и пополнения бэклогов разработки.
Azure Service Health позволяет оперативно отслеживать состояние платформы. Раздел Service issues (Проблемы со службами) отражает текущие инциденты; Planned maintenance (Плановое обслуживание) сообщает о предстоящих изменениях платформы; Health advisories (Рекомендации по работоспособности) содержат информацию об устаревании и передовые практики. Настройте оповещения о работоспособности служб с помощью групп действий, фильтруя по подписке, региону и службе. Используйте Service Health в паре с Resource Health, чтобы отличать сбои платформы от проблем с рабочей нагрузкой для точной диагностики инцидентов.
Azure Resource Graph предоставляет инвентаризацию и аналитику соответствия в масштабе всего клиента (tenant) с помощью масштабируемых запросов с низкой задержкой, использующих синтаксис, подобный KQL. Выполняйте запросы к тысячам подписок для обнаружения дрейфа конфигурации ресурсов, ресурсов без тегов, небезопасных конфигураций или неподдерживаемых SKU. Объединяйте результаты Resource Graph с ресурсами соответствия политикам (Policy compliance) для создания сводных отчетов на уровне групп управления, включая исключения и время последней оценки. Используйте отслеживание изменений (где доступно) для фиксации дельт свойств для криминалистического анализа.
Azure Policy применяет ограничительные меры и измеряет соответствие. Назначайте политики и инициативы на уровне групп управления, подписок или групп ресурсов. Понимайте состояния соответствия: compliant (соответствует), non-compliant (не соответствует), conflict (конфликт), error (ошибка) и exempt (исключено). Используйте исключения (exemptions) с обоснованием и сроком действия, чтобы моделировать принятие риска, не искажая метрики соответствия, и исключайте только минимально необходимую область. Для эффектов deployIfNotExists и modify настраивайте задачи по исправлению (remediation tasks), использующие управляемое удостоверение с минимально необходимыми разрешениями. Отслеживайте статус заданий по исправлению, сбои и операции на панели мониторинга соответствия и в Activity Log; настраивайте оповещения о постоянном несоответствии. Объединяйте результаты оценки политик с Resource Graph и Workbooks для создания панелей мониторинга управления для руководства.
Автоматизация и управление исправлениями
Azure Automation организует выполнение повторяющихся задач. Создавайте модули runbook на PowerShell или Python, запускаемые по расписанию, через веб-перехватчики, триггеры на основе событий или оповещения. Используйте Hybrid Runbook Workers для выполнения автоматизации вблизи ресурсов в частных сетях или других облаках под управлением Azure Arc. Внедряйте стандартизированные модули и обработку ошибок, а секреты храните в Key Vault.
Управление обновлениями (Update Management) обеспечивает актуальность ОС. Организации могут использовать Azure Automation Update Management (устаревшая версия) или Azure Update Manager для масштабной организации установки исправлений с оценкой, утверждением, окнами обслуживания и динамическими группами. Интегрируйте оповещения для отслеживания неудачных развертываний и создавайте отчеты о соответствии по подпискам, ОС и степени серьезности. Для борьбы со смещением конфигурации служба Azure Automation State Configuration (DSC) применяет декларативные конфигурации, отслеживает соответствие и устраняет отклонения. Представляйте конфигурации в виде кода, версионируйте их и поэтапно развертывайте в разных средах.
Интегрируйте оповещения для запуска модулей runbook в сценариях автоматического исправления: горизонтальное масштабирование при высокой загрузке ЦП, перезапуск отказавших служб при потере heartbeat-сигнала или помещение в карантин несоответствующих ресурсов, обнаруженных с помощью Policy. Замкните цикл, создавая инциденты через коннекторы ITSM и включая доказательства до и после исправления с помощью запросов Log Analytics, встроенных в модули runbook.
Практический сценарий
Компания Tailwind Traders управляет мультирегиональной платформой электронной коммерции на базе AKS, App Service и Azure SQL Database в шести подписках. Руководство требует обеспечить доступность сервиса на уровне 99,9%, предоставлять ежемесячные отчеты об изменениях в развертываниях, сократить затраты на 20% за счет обязательств и обеспечить проверяемое соответствие политикам тегирования и сетевым политикам.
- Создание централизованной телеметрии
- Создайте два рабочих пространства Log Analytics (США, ЕС) для удовлетворения требований к резидентности данных и RBAC. Настройте параметры диагностики для подписок, групп ресурсов и всех критически важных ресурсов для отправки метрик/журналов ресурсов и Activity Log в региональное рабочее пространство. Выбор обусловлен тем, что модель с двумя региональными рабочими пространствами обеспечивает баланс между суверенитетом данных, производительностью и централизованной аналитикой без трансграничного перемещения данных.
- Инструментирование приложений
- Включите Application Insights с автоматическим инструментированием для App Service и sidecar-контейнеров в AKS, где это поддерживается; используйте OpenTelemetry для сервисов, написанных на Go. Настройте адаптивную выборку и распределенную трассировку. Выбор сделан для получения глубокой видимости запросов, зависимостей и исключений с минимальными изменениями кода и контролируемой стоимостью приема данных.
- Оповещения, требующие действий
- Внедрите оповещения по метрикам для признаков нарушения SLO (задержка p95, частота ошибок 5xx, глубина очереди) и оповещения по журналам для всплесков ошибок и пользовательских обнаружений с помощью KQL. Направляйте их в ролевые группы действий: Ops On-Call (PagerDuty + email), SRE Automation (Logic App) и Leadership (сводка по электронной почте). Это разделяет обнаружение и реагирование и обеспечивает настраиваемую и надежную маршрутизацию инцидентов.
- Доступность и пользовательский опыт
- Настройте мультирегиональные тесты доступности Application Insights для API витрины и оформления заказа со строгими проверками SSL и содержимого. Выбор сделан для обнаружения внешних проблем, влияющих на клиентов, независимо от внутренних метрик.
- Операционные панели мониторинга
- Создайте книги Azure Monitor Workbooks с параметрами (подписка, регион, среда), объединяющие метрики, диаграммы KQL и ссылки для детализации к трассировкам и журналам. Внедрите развертывание JSON-файлов книг в формате IaC. Workbooks предоставляют общие интерактивные runbook-сценарии на одной странице для NOC и SRE.
- Управление затратами
- Установите бюджеты для каждой подписки и для каждого тега отдела с оповещениями при достижении 50/80/100%, которые запускают Logic App для уведомления владельцев и открытия заявок в ITSM. Используйте амортизированные представления в Cost Analysis и включите рекомендации по резервированиям и планам экономии; приобретите 3-летние резервирования для стабильных рабочих нагрузок SQL MI и планы экономии для вычислительных ресурсов с переменной нагрузкой. Это напрямую позволяет достичь целевого показателя сокращения затрат на 20% с помощью автоматизированных защитных механизмов.
- Advisor и Service Health
- Еженедельно просматривайте рекомендации Azure Advisor; создавайте элементы в бэклоге для оптимизации размеров и обеспечения избыточности на уровне зон. Настройте оповещения Service Health для используемых регионов и служб, направляя их в группу действий для дежурной смены. Это обеспечивает непрерывное улучшение и быструю осведомленность об инцидентах на платформе.
- Соответствие требованиям и отчетность по парку ресурсов
- Назначьте инициативу Azure Policy, которая требует наличия обязательных тегов, запрещает публичные IP-адреса на сетевых интерфейсах (NIC) и требует наличия параметров диагностики. Используйте исключения для утвержденных случаев с истечением срока действия. Настройте задачи по исправлению с использованием управляемого удостоверения. Используйте Azure Resource Graph для запроса соответствия политикам и ресурсов без тегов во всех подписках, а результаты выводите в Workbooks для аудита. Это создает проверяемое, автоматизированное управление с измеримым уровнем соответствия.
- Отчетность об изменениях в развертываниях
- Выполняйте запросы к AzureActivity в Log Analytics для поиска развертываний ARM и сопоставляйте их с журналами оценки политик для создания ежемесячного отчета, отправляемого по электронной почте через Logic App. Это позволяет использовать Activity Log как авторитетный источник событий развертывания без необходимости в пользовательских агентах.
- Автоматическое исправление и управление обновлениями
- Используйте модули runbook в Azure Automation для перезапуска неработоспособных подов через API AKS при срабатывании оповещений о потере heartbeat-сигнала и для ротации секретов из Key Vault. Включите Azure Update Manager для обеспечения соответствия требованиям по установке исправлений с помощью окон обслуживания и динамических групп. Hybrid Runbook Workers безопасно выполняют задачи, привязанные к сети. Это замыкает цикл от обнаружения до устранения и поддерживает парк ресурсов в актуальном состоянии.
Каждая выбранная служба минимизирует необходимость в пользовательской разработке, масштабируется на несколько подписок и соответствует целям управления, затрат и надежности, сохраняя при этом четкое разделение операционной ответственности.
← Архитектура интеграции и обмена сообщениями · Все домены · Миграция и модернизация →
Отработать эти вопросы → · Тесты на время на ExamRoll.io →
Pass the whole exam — not just this question
You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.
Сдайте экзамен →