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

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

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

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

Примечание.

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

Акселератор ALZ Bicep

Пошаговые инструкции по реализации, автоматизации и поддержанию модуля ALZ Bicep с помощью акселератора Bicep ALZ.

Платформа ALZ Bicep Accelerator была разработана для обеспечения поддержки конечных пользователей для подключения и развертывания ALZ Bicep с помощью полнофункциональных конвейеров CI/CD, поддержки GitHub Actions и Azure DevOps Pipelines, выделенной платформы для синхронизации с новыми выпусками ALZ Bicep и изменения или добавления пользовательских модулей, а также предоставляет рекомендации по стратегии ветвления и конвейеры запросов на вытягивание для подстроки и проверки модулей Bicep.

Проект

Diagram showing the bicep modules for deploying Azure landing zones.

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

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

Модули

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

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

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

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

Diagram showing the deployment layers.

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

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

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

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

Этот модуль развертывает иерархию групп управления, как определено в концептуальной архитектуре целевой зоны Azure.
Основные сведения Пользовательские определения политик DeployIfNotExists (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)
  • Элементы управления затратами

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

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

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

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

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

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