Microsoft AZ-305: Well-Architected Framework и принципы проектирования — Руководство по подготовке

Часть Microsoft Azure Solutions Architect Expert AZ-305 — Руководство по подготовке. Практикуйтесь с проверенными ответами в центре экзаменов Microsoft, или пройдите тесты на время на ExamRoll.io.

Обзор

Azure Well-Architected Framework (WAF) — это набор предписывающих принципов, которые определяют проектирование, создание и эксплуатацию надежных, безопасных, экономичных, операционно эффективных и производительных рабочих нагрузок в Azure. Приведение решений в соответствие с пятью основными принципами — надежностью, безопасностью, оптимизацией затрат, операционным совершенством и эффективностью производительности — гарантирует, что архитектурные решения представляют собой явные компромиссы, основанные на бизнес-приоритетах, допустимом уровне риска и таких ограничениях, как суверенитет данных и бюджет. Достижение согласованности в масштабе требует использования целевых зон (landing zones), управления на основе политик и автоматизации по умолчанию. Современные архитектуры делают акцент на слабой связанности (decoupling), событийно-ориентированном взаимодействии и таких шаблонах, как CQRS, Strangler Fig и микросервисы, реализуемых с помощью нативных сервисов Azure и интегрированной наблюдаемости, чтобы соответствовать как быстрым изменениям, так и строгим требованиям комплаенса.

Пять основных принципов: надежность, безопасность, затраты, операционное совершенство, производительность

Надежность гарантирует, что рабочие нагрузки продолжают соответствовать бизнес-SLA в условиях сбоев и во время изменений. Проектируйте с учетом доменов сбоя и доменов обновления, развертывая решения в нескольких зонах доступности или парных регионах, выбирая управляемые сервисы со встроенной высокой доступностью (HA) и реализуя шаблоны отказоустойчивости. Тестируйте восстанавливаемость с помощью хаос-инжиниринга и учений по аварийному восстановлению. Для данных с отслеживанием состояния выбирайте сервисы с функциями RPO/RTO — например, Azure SQL Database Active Geo-Replication или многорегионную запись в Cosmos DB — в сочетании с автоматизированными резервными копиями и протестированными сценариями (runbooks).

Безопасность — это многоуровневая, эшелонированная защита, основанная на принципе нулевого доверия (Zero Trust). Применяйте принцип наименьших привилегий с помощью Azure RBAC, Privileged Identity Management (PIM) и проверок доступа для постоянного контроля прав. Изолируйте радиус поражения сети с помощью частных конечных точек (private endpoints), групп безопасности сети (NSG) и Azure Firewall; интегрируйте Web Application Firewall (WAF) в Azure Front Door или Application Gateway. Исходите из предположения о взломе, используя непрерывный мониторинг через Defender for Cloud, обнаружение угроз в Sentinel и строгую защиту удостоверений (MFA, Conditional Access).

Оптимизация затрат уравновешивает ценность для бизнеса и общую стоимость владения. Подбирайте правильный размер вычислительных ресурсов и уровней обслуживания на основе телеметрии; используйте масштабирование для соответствия спросу и отключайте непроизводственные среды. Используйте резервирования и планы экономии для стабильных рабочих нагрузок, применяйте Spot VMs для прерываемых вычислений, распределяйте хранилище и данные по уровням в зависимости от срока хранения и отдавайте предпочтение бессерверным решениям, если они соответствуют профилю нагрузки. Внедряйте тегирование и бюджеты, а также используйте Azure Policy для стандартизации контроля затрат.

Операционное совершенство делает акцент на автоматизации, повторяемости и циклах обучения. Относитесь к средам как к коду (environments as code) с помощью Bicep/ARM или Terraform, обеспечивайте устранение расхождений (drift remediation) и внедряйте согласованные CI/CD. Операционные инсайты поступают из структурированных логов, метрик, трассировок и синтетических тестов, которые подключены к системам оповещения и дашбордам SLO, чтобы сократить среднее время восстановления (MTTR) и обеспечить проактивные улучшения.

Эффективность производительности гарантирует, что рабочая нагрузка соответствует целям по пропускной способности и задержке при изменяющейся нагрузке. Проектируйте для горизонтального масштабирования (scale-out), агрессивно кэшируйте, размещайте контент ближе к пользователям (на границе сети), выбирайте секционирование данных и реплики для чтения, соответствующие шаблонам доступа. Проверяйте производительность с помощью реалистичных нагрузочных тестов и настраивайте систему на основе полученных данных.

Шаблоны надежности и производительности в Azure

Шаблоны отказоустойчивости снижают вероятность и влияние сбоев, сохраняя при этом предсказуемую задержку.

Шаблоны производительности дополняют отказоустойчивость:

Принципы проектирования для операционного совершенства, оптимизации затрат и безопасности

Инфраструктура как код: Стандартизируйте использование модулей Bicep/ARM или Terraform, с версионированием в Git и проверкой с помощью предразвёрточных тестов и политики как кода (policy-as-code). Используйте спецификации шаблонов (template specs) или реестры Terraform для повторного использования. Параметризуйте для каждой среды и обеспечивайте согласованное применение тегов, блокировок ресурсов и настроек диагностики. Интегрируйте с Azure DevOps или GitHub Actions; используйте поэтапные развёртывания и утверждения для контролируемого продвижения по средам.

Автоматизация развёртывания: Отдавайте предпочтение слотам развёртывания (deployment slots), стратегиям blue-green и canary, поддерживаемым App Service, AKS (с помощью прогрессивных выкатов через Deployment strategies) и Traffic Manager/Front Door для взвешенной маршрутизации. Автоматизируйте изменения схемы базы данных с помощью конвейеров миграции и обратно совместимых контрактов. Контролируйте выкаты с помощью проб работоспособности (health probes) и бизнес-KPI.

Наблюдаемость (Observability): Инструментируйте приложения с помощью OpenTelemetry, экспортируйте данные в Application Insights для распределённой трассировки, сбора метрик и построения карт зависимостей. Включите Azure Monitor для сбора метрик платформы, разверните рабочие области Log Analytics и создайте Workbooks и дашборды для отслеживания SLO и ёмкости. Определите правила оповещений с динамическими порогами, интегрируйте их с ITSM и централизованно храните Activity Logs и журналы диагностики для аудита и расследований.

Правильный подбор размеров и контроль затрат: Используйте Azure Advisor, метрики использования Azure Monitor и профилирование в Application Insights для выявления избыточных ресурсов (простаивающие ядра, излишне выделенные vCores, завышенные RU/s). Применяйте Reservations/Savings Plans для стабильных рабочих нагрузок (VMs, SQL, Synapse), зарезервированную ёмкость (reserved capacity) для Storage и уровни обязательств (commitment tiers) для Cosmos DB. Выбирайте Spot VMs для сборочных агентов, пакетной обработки и обучения ML с использованием контрольных точек (checkpointing). Соблюдайте баланс архитектурных компромиссов: управляемые PaaS-сервисы могут снизить операционные расходы и повысить надёжность при более высокой стоимости за единицу; кэширование снижает затраты на исходящий трафик (data egress) и RU, но усложняет инвалидацию кэша; высокая доступность в нескольких регионах увеличивает расходы, но может требоваться для соблюдения RTO/RPO.

Принципы безопасности на практике:

Зоны развертывания Azure и современные архитектурные паттерны

Зоны развертывания Azure (Azure Landing Zones) позволяют внедрить эту концепцию в больших масштабах. Организуйте иерархию групп управления (корень → платформа → бизнес-подразделения) для определения области действия Azure Policy, RBAC и бюджетов. Зоны развертывания платформы предоставляют общие службы: идентификацию (Azure AD), сетевое взаимодействие (концентратор с Azure Firewall, DDoS, DNS), управление (Log Analytics, Automation, Update Management) и безопасность (Defender for Cloud). Зоны развертывания приложений размещают рабочие нагрузки, сегментированные по средам и границам соответствия требованиям, с унаследованными политиками, которые принудительно применяют тегирование, диагностику и разрешенные типы ресурсов. Используйте дизайн Cloud Adoption Framework (CAF) Enterprise-Scale или акселераторы зон развертывания на основе Terraform/Bicep для быстрого и согласованного развертывания начальной конфигурации.

Микросервисы в Azure делают акцент на слабосвязанных командах и независимо развертываемых службах:

CQRS и Event Sourcing разделяют модели записи и чтения для повышения производительности и изоляции сложности. Сохраняйте события в режиме «только добавление» (append-only) в хранилище событий (Cosmos DB, Azure SQL или Event Hubs с уплотнением через последующее хранилище), воспроизводите их для восстановления состояния и проецируйте в модели чтения, оптимизированные для запросов, такие как Azure SQL Database, контейнеры Cosmos DB или Azure Cognitive Search. Канал изменений (change feed) Cosmos DB — ключевой элемент для создания проекций: Azure Functions или Azure Stream Analytics могут обрабатывать изменения для обновления хранилищ чтения практически в реальном времени. Event Hubs буферизует потоки событий большого объема, при этом потребители масштабируются независимо. Используйте итоговую согласованность (eventual consistency) с четкими SLA и паттернами пользовательского опыта (например, подтверждение выполнения команды с последующей синхронизацией модели чтения).

Паттерн «Удушающая фига» (Strangler Fig) обеспечивает инкрементальную модернизацию. Разместите Azure API Management перед монолитом, чтобы направлять запросы к определенным конечным точкам на новые микросервисы, в то время как остальные запросы продолжат поступать на унаследованный бэкенд. Используйте политики для маршрутизации на основе заголовков, преобразования ответов и аутентификации. Синхронизируйте данные с помощью захвата измененных данных (change data capture, например, Azure Data Factory или Database CDC в Event Hubs) и создавайте новые модели чтения с помощью Cosmos DB и канала изменений, постепенно выводя из эксплуатации возможности монолита. Управляйте рисками с помощью флагов функций (feature flags), канареечной маршрутизации (canary routing) на уровне Front Door и комплексной наблюдаемости для сравнения поведения.

Практический сценарий

Компания Starbucks модернизирует свою глобальную платформу заказов, которая в настоящее время представляет собой монолит, размещенный на виртуальных машинах в одном регионе. Им необходимо повысить надежность в разных регионах, уменьшить задержку для мобильных клиентов, внедрить принцип наименьших привилегий и модель «Никому не доверяй» (Zero Trust), а также выполнить инкрементальную миграцию без прерывания бизнес-процессов.

  1. Создайте корпоративные зоны развертывания
  1. Разместите пограничный сервис и фасад API перед монолитом
  1. Реализуйте миграцию по паттерну «Удушающая фига»
  1. Создавайте микросервисы с использованием отказоустойчивых и производительных паттернов
  1. Внедрите взаимодействие на основе событий и CQRS
  1. Усильте безопасность и управление идентификацией
  1. Спроектируйте систему с упором на надежность и наблюдаемость
  1. Постоянно оптимизируйте затраты

Миграция и модернизация · Все домены

Отработать эти вопросы → · Тесты на время на 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.

Сдайте экзамен →

Просмотреть Microsoft →

Related guides

Все включено

Одна подписка. Каждый экзамен.

Каждый план открывает неограниченный поиск ответов, практические тесты, объяснения AI и полную библиотеку ресурсов — на более чем 20 языках.

Ежемесячно
24.87
Just €0.83/day
Все включено:
  • Неограниченный поиск ответов
  • Неограниченные практические тесты
  • Объяснения на основе AI
  • Полная библиотека ресурсов
  • 20+ языков
  • Еженедельные обновления контента
  • Награды и рефералы
  • Приоритетная поддержка
Начать бесплатную пробную версию

Кредитная карта не требуется*

Лучшая цена
12 месяцев
179.87
Just €0.49/daySave 40%
Все включено:
  • Неограниченный поиск ответов
  • Неограниченные практические тесты
  • Объяснения на основе AI
  • Полная библиотека ресурсов
  • 20+ языков
  • Еженедельные обновления контента
  • Награды и рефералы
  • Приоритетная поддержка
Начать бесплатную пробную версию

Кредитная карта не требуется*

✓ Включен бесплатный план · ✓ Отмена в любое время · ✓ Все планы открывают полный продукт