Целевые зоны Azure— рекомендации по проектированию модулей Bicep

В этой статье рассматриваются рекомендации по проектированию модульной целевой зоны Azure (ALZ) — решение Bicep, которое можно использовать для развертывания основных возможностей платформы концептуальной архитектуры целевой зоны Azure и управления ими, как описано в Cloud Adoption Framework (CAF).

Bicep — это предметно-ориентированный язык (DSL), который использует декларативный синтаксис для развертывания ресурсов Azure. Он имеет краткий синтаксис, безопасность надежных типов и поддержку повторного использования кода.

Логотип GitHub Реализация этой архитектуры доступна на сайте GitHub: Целевые зоны Azure (ALZ) — реализация Bicep. Его можно использовать в качестве отправной точки и настроить в соответствии с вашими потребностями.

Примечание

Существуют реализации для нескольких технологий развертывания, включая портал, шаблоны ARM и модули Terraform. Выбор технологии развертывания не должен влиять на итоговое развертывание целевых зон Azure.

Конструирование

Схема, показывающая модули bicep для развертывания целевых зон Azure.

Архитектура использует модульную природу Azure Bicep и состоит из нескольких модулей. Каждый модуль инкапсулирует основную возможность концептуальной архитектуры целевых зон Azure. Модули можно развертывать по отдельности, но существуют зависимости, о которых следует знать.

Архитектура предлагает включение модулей оркестратора для упрощения развертывания. Модули оркестратора можно использовать для автоматизации развертывания модулей и инкапсулирования разных топологий развертывания.

Модули

Основным понятием в Bicep является использование модулей. Модули позволяют упорядочивать развертывания в логические группировки. Модули позволяют повысить удобочитаемость файлов Bicep за счет инкапсуляции сложных сведений о развертывании. Кроме того, модули можно многократно использовать для разных развертываний.

Возможность повторного использования модулей дает реальную пользу при определении и развертывании целевых зон. Она позволяет повторять согласованные среды в коде, уменьшая при этом усилия, необходимые для развертывания в большом масштабе.

Слои и промежуточные уровни

Помимо модулей, архитектура целевой зоны Bicep структурирована с использованием концепции слоев. Слои — это группы модулей Bicep, которые предназначены для развертывания вместе. Эти группы образуют логические этапы реализации.

Схема, показывающая уровни развертывания.

Преимущество этого многоуровневого подхода — возможность постепенно добавлять в среду. Например, можно начать с небольшого количества слоев. Остальные слои можно добавить на следующем этапе, когда все будет готово.

Описания модулей

В этом разделе представлен общий обзор основных модулей в этой архитектуре.

Уровень Модуль Описание Полезные ссылки
Основные сведения Группы управления Группы управления — это ресурсы самого высокого уровня в клиенте Azure. Группы управления позволяют более легко управлять ресурсами. Вы можете применить политику на уровне группы управления, а ресурсы более низкого уровня наследуют эту политику. В частности, можно применить следующие элементы на уровне группы управления, которые будут наследоваться подписками в группе управления:
  • Политики Azure
  • Назначения ролей на основе ролей (RBAC) в Azure
  • Элементы управления затратами

Этот модуль развертывает иерархию групп управления, как определено в концептуальной архитектуре целевой зоны Azure.
Основные сведения Определения настраиваемых политик РазвертываниеIfNotExists (DINE) или изменение политик помогает обеспечить соответствие подписок и ресурсов, составляющих целевые зоны. Эти политики также упрощают бремя управления целевыми зонами.

Этот модуль развертывает определения настраиваемой политики в группах управления. Не все клиенты могут использовать политики DINE или Modify. Если это так, инструкции CAF по пользовательским политикам предоставляют рекомендации.
Основные сведения Определения пользовательских ролей Управление доступом на основе ролей (RBAC) упрощает управление правами пользователей в системе. Вместо управления правами отдельных лиц вы определяете права, необходимые для различных ролей в вашей системе. Azure RBAC имеет несколько встроенных ролей. Определения пользовательских ролей позволяют создавать пользовательские роли для вашей среды.

Этот модуль развертывает определения пользовательских ролей. Модуль должен следовать рекомендациям CAF по управлению доступом на основе ролей Azure.
Управление Ведение журнала, Служба автоматизации & Sentinel Azure Monitor, служба автоматизации Azure и Microsoft Sentinel позволяют отслеживать инфраструктуру и рабочие нагрузки и управлять ими. Azure Monitor — это решение, которое позволяет собирать и анализировать данные телеметрии из вашей среды.

Microsoft Sentinel — это облачная информация о безопасности и управление событиями (SIEM). Оно предоставляет следующие возможности.
  • Сбор — сбор данных по всей инфраструктуре
  • Обнаружение — обнаружение угроз, которые ранее не были обнаружены
  • Реагирование — реагирование на законные угрозы с помощью встроенной оркестрации
  • Исследование — исследование угроз с помощью искусственного интеллекта

служба автоматизации Azure — это облачная система автоматизации. Сюда входят:
  • Управление конфигурацией — инвентаризация и отслеживание изменений для виртуальных машин Linux и Windows и управление требуемой конфигурацией состояния
  • Управление обновлениями. Оценка соответствия системы Windows и Linux и создание запланированных развертываний для соответствия требованиям
  • Автоматизация процессов — автоматизация задач управления

Этот модуль развертывает средства, необходимые для мониторинга угроз, управления и доступа к ней в вашей среде. Эти средства должны включать Azure Monitor, служба автоматизации Azure и Microsoft Sentinel.
Соединение Сеть Топология сети является ключевым аспектом в развертываниях целевой зоны Azure. CAF фокусируется на двух основных сетевых подходах:
  • Топологии на основе azure Виртуальная глобальная сеть
  • Традиционные топологии

Эти модули развертывают выбранную топологию сети.
Идентификация Назначения ролей Управление удостоверениями и доступом (IAM) — это ключевая граница безопасности в облачных вычислениях. Azure RBAC позволяет выполнять назначения ролей встроенных ролей или пользовательских определений ролей субъектам безопасности.

Этот модуль развертывает назначения ролей для субъектов-служб, управляемых удостоверений или групп безопасности в группах управления и подписках. Модуль должен соответствовать рекомендациям CAF по управлению удостоверениями и доступом Azure.
Основные сведения Размещение подписки Подписки, назначенные группе управления, наследуются:
  • Политики Azure
  • Назначения ролей на основе ролей Azure (RBAC)
  • Элементы управления затратами

Этот модуль перемещает подписки в соответствующую группу управления.
Основные сведения Built-In и назначения настраиваемых политик В этом модуле развертывается целевая зона Azure по умолчанию Политика Azure назначения в группах управления. Он также создает назначения ролей для управляемых удостоверений, назначаемых системой, созданных политиками.
Управление Модули Orchestrator Модули оркестратора могут значительно улучшить процесс развертывания. Эти модули инкапсулируют развертывание нескольких модулей в одном модуле. Это скрывает сложность от конечного пользователя.

Настройка реализации Bicep

Реализации целевой зоны Azure, предоставляемые в рамках Cloud Adoption Framework соответствуют широкому спектру требований и вариантов использования. Однако часто существуют сценарии, в которых требуется настройка для удовлетворения конкретных бизнес-потребностей.

После реализации целевой зоны платформы необходимо развернуть целевые зоны приложений , которые позволяют командам приложений в landing zones группе управления с защитой, которые требуются администраторам Центрального ИТ-отдела или PlatformOps. Группа corp управления предназначена для корпоративных подключенных приложений, а online группа управления — для приложений, которые в основном общедоступны, но могут по-прежнему подключаться к корпоративным приложениям через центральные сети в некоторых сценариях.

Реализацию целевой зоны Bicep Azure можно использовать в качестве основы настраиваемого развертывания. Он позволяет ускорить реализацию, удалив необходимость начать с нуля из-за определенного необходимого изменения, которое правила готовый вариант.

Логотип GitHub Сведения о настройке модулей доступны в репозитории GitHub на вики-сайте GitHub: Целевые зоны Azure (ALZ) Bicep — вики-руководство для потребителей. Ее можно использовать в качестве отправной точки и настроить в соответствии с вашими потребностями.