Microsoft AZ-104: Azure App Service и вычислительные ресурсы PaaS — Руководство по подготовке

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

Обзор

Портфель вычислительных PaaS-решений Azure сочетает в себе полностью управляемый хостинг веб-сайтов/приложений, бессерверные функции, автоматизацию рабочих процессов, контейнеры по требованию и оркестрируемые контейнеры. Для администратора успех зависит от понимания границ каждой службы, как они взаимодействуют по сети и аутентифицируются, а также как выполнять надежное развертывание и масштабирование. В этом разделе рассматриваются App Service (планы, слоты развертывания, сетевые возможности и встроенная аутентификация), Azure Functions и Logic Apps (планы, триггеры, коннекторы), Azure Container Instances и AKS (планирование, масштабирование, операционные инструменты) и изолированная среда App Service Environment.

Основы вычислений в App Service и Functions

Планы App Service определяют пул вычислительных ресурсов для Web Apps, API Apps и Function Apps, работающих на выделенном плане. Уровни имеют различные возможности и модели масштабирования:

Масштабирование делится на вертикальное (изменение ценового уровня/размера ВМ) и горизонтальное (изменение количества экземпляров). Автомасштабирование требует уровня Standard и выше и управляется правилами Azure Monitor (на основе ЦП, памяти через метрики App Service или пользовательских метрик). Операции масштабирования выполняются для каждого плана App Service и влияют на все приложения в рамках этого плана.

Слоты развертывания предоставляют рабочие экземпляры приложения в том же плане для промежуточного развертывания изменений. Слоты доступны на уровне Standard и выше, при этом Standard поддерживает меньшее их количество, а Premium/Isolated — большее. Операция обмена (swap) организует переключение без простоя путем обмена содержимым и конфигурацией слотов, сохраняя при этом настройки слота (привязанные параметры приложения и строки подключения, которые остаются со слотом). Обмен с предварительным просмотром «прогревает» целевой слот и оценивает его работоспособность перед завершением операции. Тестирование в рабочей среде направляет процент производственного трафика на один или несколько слотов; маршрутизация является «липкой» для каждого клиента, чтобы поддерживать привязку к сеансу во время тестового периода.

Сетевые возможности App Service предлагают контролируемое исходящее и входящее подключение:

Встроенная аутентификация/авторизация («Easy Auth») размещает перед вашим приложением размещенный обработчик аутентификации, снимая с приложения задачу проверки токенов без изменения кода. Поддерживаемые поставщики включают Microsoft Entra ID (Azure AD), Microsoft Account, Google, Facebook, Twitter и универсальный OpenID Connect. Вы можете требовать входа в систему для всех запросов или передавать их приложению, устанавливать разрешенные аудитории и ограничивать доступ для конкретных клиентов (tenants). Дополнительное хранилище токенов кэширует токены поставщиков и предоставляет утверждения (claims) через конечную точку /.auth/me и заголовки запросов. Используйте в сочетании с управляемым удостоверением, назначаемым системой, для безопасного вызова других служб Azure.

Azure Functions предлагает управляемые событиями вычисления в трех моделях хостинга:

Стоимость и поведение масштабирования существенно различаются между моделями App Service Plan и Consumption. В App Service Plan плата взимается за размер и количество постоянно работающих экземпляров, а масштабирование происходит по правилам плана. Модель потребления (Consumption) для Functions взимает плату только за время выполнения и память, с автоматическим масштабированием на основе параллелизма и масштабированием до нуля. План Premium находится между ними, сочетая зарезервированные «теплые» мощности с возможностью пикового масштабирования.

Контейнеры и Kubernetes

Azure Container Instances (ACI) предоставляет контейнеры по требованию с посекундной тарификацией без необходимости управлять виртуальными машинами или оркестраторами. Единицей развертывания является группа контейнеров: один или несколько контейнеров, запланированных на одном хосте, которые совместно используют IP-адрес, порты, тома и жизненный цикл. Определите CPU/память для каждого контейнера, откройте порты и подключите тома, такие как Azure Files, секреты и emptyDir. Переменные окружения могут быть обычными или защищенными (исключаются из журналов и метаданных). Политики перезапуска управляют жизненным циклом: Always (по умолчанию для долго работающих служб), OnFailure (для заданий, которые должны повторяться при ненулевом коде завершения) и Never (для задач, выполняемых до завершения, когда требуется проверить состояние выхода без перезапусков). Сетевые возможности поддерживают публичные IP-адреса, частные IP-адреса с внедрением в VNet в делегированную подсеть и метки DNS-имен для публичных конечных точек.

Azure Kubernetes Service (AKS) — это управляемый уровень управления Kubernetes с пулами узлов, развернутыми как Virtual Machine Scale Sets. Пулы узлов разделяют системные рабочие нагрузки (компоненты kube-system) и пользовательские рабочие нагрузки, поддерживают несколько размеров ВМ и могут запускать Linux и Windows (для Windows требуется как минимум один системный пул Linux). Пулы могут иметь taints для управления планированием подов. Обновления организуются для каждого пула отдельно, а maxPods, зоны доступности и эфемерные диски ОС настраиваются при создании пула. Cluster autoscaler интегрируется с планировщиком Kubernetes для изменения количества узлов в пределах min/max, когда ожидающие поды не могут быть запланированы или узлы недостаточно загружены; он учитывает Pod Disruption Budgets и уменьшает масштаб только тогда, когда это безопасно. Horizontal Pod Autoscaler дополняет это, масштабируя реплики внутри Deployment на основе метрик.

Основы kubectl для администрирования кластера:

undefined

для слияния kubeconfig и выбора контекста.

undefined

;

undefined

для получения подробной информации и событий.

undefined

для stdout/stderr,

undefined

для интерактивного устранения неполадок.

undefined

; используйте пространства имен для разграничения ресурсов;

undefined

для переключения пространств имен.

Сетевые плагины (Azure CNI или kubenet), идентификация (управляемое удостоверение или service principal) и интеграция с RBAC/Entra ID определяют распределение IP-адресов для подов, аутентификацию и авторизацию в кластере. Убедитесь, что удостоверение кластера имеет разрешения для балансировщиков нагрузки, управляемых дисков и групп ресурсов узлов.

Интеграция, сети и безопасность

Logic Apps предоставляет управляемый механизм рабочих процессов с коннекторами к сотням SaaS и сервисов Azure. Рабочий процесс состоит из триггера, который запускает выполнение, и действий, которые выполняют шаги. Триггеры включают HTTP-запросы, Recurrence (повторение), сообщения Service Bus, события Event Grid, события Storage и многие события SaaS (например, при создании записи в Dynamics 365). Действия включают управляющие конструкции (условия, циклы, switch), операции с данными (compose, parse JSON, переменные) и операции коннекторов (отправить email, поставить сообщение в очередь, вызвать API). Интеграция с сервисами Azure глубока:

App Service Environment (ASE) реализует уровень Isolated для App Service. Развернутый в вашей виртуальной сети, ASE предоставляет однопользовательские, выделенные вычислительные ресурсы и хранилища с полным контролем над сетью. Внешний ASE (external ASE) предоставляет публичные конечные точки для входящего трафика; внутренний балансировщик нагрузки (ILB) ASE публикует только частный VIP для строго приватного доступа. Приложения в ASE используют ценовые категории Isolated/Isolated v2. Вы платите как за саму среду (stamp fee), так и за каждый экземпляр рабочего узла. ASE выбирают, когда требования к соответствию, сетевой изоляции или масштабированию превышают возможности многопользовательского App Service. С ASE v3 развертывание и настройка сети упрощены, но основное предложение остается прежним: выделенный, приватно адресуемый App Service с вашей VNet в качестве периметра.

Управление доступом в этих службах основывается на Azure RBAC для действий с ресурсами, управляемых удостоверениях для аутентификации между службами и Conditional Access на уровне идентификации. Для контроля входящего трафика в App Service комбинируйте Private Endpoints или ILB ASE с ограничениями доступа и фронтендами с поддержкой WAF (например, Application Gateway или Azure Front Door) по мере необходимости. Для контроля исходящего трафика используйте интеграцию с VNet с NSG, таблицами маршрутизации и частными конечными точками для служб данных.

Операции по развертыванию и масштабированию

Для надежных релизов в App Service используются слоты развертывания, чтобы проверять работоспособность и прогревать кэши перед обменом (swap). Конфигурацию, которая отличается для каждой среды (например, строки подключения, флаги функций), следует помечать как «настройки слота», чтобы она не переносилась во время обмена. Используйте обмен с предварительным просмотром (swap with preview) для выполнения проверок работоспособности или обращения к специальным конечным точкам прогрева приложения; если проверка не пройдена, обмен прерывается. Во время канареечного развертывания включите маршрутизацию трафика, чтобы направить небольшой, «липкий» (sticky) процент пользователей на промежуточный слот (staging) и постепенно его увеличивать. Настройки приложения, специфичные для слота, позволяют безопасно включать и выключать бета-функции.

Автомасштабирование для App Service Plans настраивается на ресурсе плана с помощью профилей (минимальное/максимальное/стандартное количество экземпляров в зависимости от времени) и правил (пороговые значения метрик с шагом масштабирования и периодом охлаждения). Для более точного масштабирования комбинируйте метрики CPU с пользовательскими метриками (например, длина очереди). Для Functions в плане Consumption масштабирование происходит автоматически; отслеживайте параллелизм (concurrency) и настраивайте host.json для управления поведением каждого триггера (например, размеры пакетов и предварительная выборка для Service Bus). План Premium масштабирует предварительно прогретые экземпляры и экземпляры для всплесков нагрузки; согласуйте минимальное количество экземпляров с целевыми показателями задержки.

В контейнерах политики перезапуска ACI должны отражать назначение: для пакетных заданий используйте Never или OnFailure, чтобы избежать бесконечных циклов; для сервисов — Always. Используйте переменные среды для конфигурации и Azure Key Vault для секретов, внедряя их через Managed Identity и стартовый код или монтируя секреты как тома, где это уместно. В AKS включите автомасштабирование кластера (cluster autoscaler) с разумными минимальными/максимальными границами для каждого пула узлов и настройте HPA для критически важных Deployments. Заложите в бюджет запас производительности (headroom) и установите Pod Disruption Budgets для защиты доступности во время обновлений и уменьшения масштаба (scale-in). Проверяйте обновления в канареечном пуле узлов перед широким развертыванием обновлений кластера или пула.

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

Компания Fabrikam, Inc. использует клиентский портал и сервисы фоновой обработки. Им необходимо модернизировать инфраструктуру до PaaS, обеспечить доступ к хранилищам данных только из частной сети, поддерживать сине-зеленые развертывания и выполнять ночное контейнеризированное ETL-задание без управления виртуальными машинами.

  1. Разместить портал на App Service Premium со слотами развертывания
  1. Обеспечить частный входящий и контролируемый исходящий трафик
  1. Реализовать фоновую обработку с помощью Azure Functions Premium
  1. Оркестрировать межсервисные рабочие процессы с помощью Logic Apps Standard
  1. Выполнять ночное ETL-задание в Azure Container Instances
  1. Подготовиться к использованию контейнеризированных микросервисов с помощью AKS

Хранилище Azure · Все домены · Базы данных Azure и службы данных

Отработать эти вопросы → · Тесты на время на 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+ языков
  • Еженедельные обновления контента
  • Награды и рефералы
  • Приоритетная поддержка
Начать бесплатную пробную версию

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

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