Управление и соответствие требованиям
Governance (управление) в Azure -- это набор инструментов для обеспечения соответствия ресурсов корпоративным стандартам, политикам безопасности и нормативным требованиям.
Azure Policy
Azure Policy позволяет создавать правила, которые автоматически применяются к ресурсам Azure. Если ресурс не соответствует политике, он помечается как несовместимый, а создание нового ресурса может быть заблокировано.
Примеры политик:
- Разрешить создание VM только в определенных регионах
- Требовать наличие тега "CostCenter" на всех ресурсах
- Запретить создание публичных IP-адресов
- Требовать шифрование для Storage Account
Эффекты политик:
- Deny -- запретить создание несоответствующего ресурса
- Audit -- разрешить, но отметить как несоответствующий
- Append -- автоматически добавить настройки (например, тег)
- DeployIfNotExists -- развернуть ресурс, если он отсутствует
- Modify -- изменить свойства ресурса
Initiative (инициатива) -- набор связанных политик, объединенных для достижения одной цели. Например, инициатива "Соответствие ISO 27001" содержит десятки отдельных политик.
# Назначение встроенной политики: разрешить VM только в West Europe
az policy assignment create \
--name "allowed-locations" \
--policy "e56962a6-4747-49cd-b67b-bf8b01975c4c" \
--params '{"listOfAllowedLocations": {"value": ["westeurope", "northeurope"]}}'
Azure Blueprints
Blueprints -- это шаблоны для создания стандартизированных окружений. Они объединяют несколько компонентов в единый пакет:
- Роли RBAC -- предустановленные назначения ролей
- Политики Azure -- набор политик для соответствия требованиям
- ARM-шаблоны -- инфраструктура как код
- Группы ресурсов -- предопределенная структура
Отличие от ARM-шаблонов: Blueprints поддерживают версионирование и сохраняют связь между определением и развернутыми ресурсами. ARM-шаблоны после развертывания теряют связь с шаблоном.
Сценарий: новая команда разработки получает готовое окружение с настроенными политиками, ролями и базовой инфраструктурой одним действием.
Resource Locks
Resource Locks защищают ресурсы от случайного удаления или изменения. Это страховка от человеческих ошибок.
Два типа блокировок:
| Тип | Изменение | Удаление |
|---|---|---|
| ReadOnly | Запрещено | Запрещено |
| CanNotDelete | Разрешено | Запрещено |
Блокировки наследуются от родительского уровня. Блокировка на Resource Group применяется ко всем ресурсам внутри.
Даже Owner не может удалить ресурс с блокировкой CanNotDelete, пока не снимет блокировку. Это дополнительная защита для критически важных ресурсов.
# Создание блокировки на Resource Group
az lock create \
--name "no-delete" \
--lock-type CanNotDelete \
--resource-group rg-production
Tags (Теги)
Теги -- это пары ключ-значение, которые прикрепляются к ресурсам для организации и классификации.
Применение тегов:
- Биллинг -- отслеживание расходов по проектам, отделам, центрам затрат
- Управление -- определение ответственных, окружений (dev/staging/prod)
- Автоматизация -- скрипты могут действовать на ресурсы с определенными тегами
- Соответствие -- классификация данных, нормативные требования
Примеры тегов:
Environment: Production
CostCenter: CC-1234
Owner: team-backend
Project: OrderManagement
DataClassification: Confidential
Важно: теги НЕ наследуются автоматически от Resource Group к ресурсам. Если вы поставили тег на группу ресурсов, ресурсы внутри не получат этот тег автоматически. Для автоматического назначения используйте Azure Policy с эффектом Modify.
Management Groups
Management Groups -- верхний уровень иерархии Azure, позволяющий управлять политиками и доступом для нескольких подписок.
Иерархия:
Root Management Group
+-- IT Department (Management Group)
| +-- Production (Subscription)
| +-- Development (Subscription)
+-- Finance (Management Group)
+-- Finance-Prod (Subscription)
Политики и роли RBAC, назначенные на Management Group, наследуются всеми подписками внутри.
Microsoft Defender for Cloud
Microsoft Defender for Cloud (ранее Azure Security Center) -- это единый центр безопасности для Azure, гибридных и мультиоблачных сред.
Ключевые возможности:
Secure Score -- числовая оценка безопасности вашей среды. Выражается в процентах, где 100% означает полное соответствие рекомендациям. Score учитывает:
- Настройки сети
- Управление доступом
- Защиту данных
- Конфигурацию ресурсов
Рекомендации -- конкретные шаги по улучшению безопасности: включить MFA, настроить NSG, зашифровать диски, обновить ПО.
Defender Plans -- платные планы защиты для конкретных типов ресурсов: Defender for Servers, Defender for SQL, Defender for Storage, Defender for Containers и другие.
Azure Monitor и средства мониторинга
Azure Monitor
Централизованная платформа мониторинга:
- Метрики -- числовые данные в реальном времени (CPU, память, запросы)
- Логи -- события и диагностика, хранятся в Log Analytics
- Алерты -- уведомления при превышении пороговых значений
- Application Insights -- мониторинг производительности приложений (APM)
Azure Service Health
Три уровня информации о здоровье Azure:
- Azure Status -- глобальный статус всех сервисов Azure
- Service Health -- проблемы, влияющие на ваши конкретные сервисы и регионы
- Resource Health -- статус конкретных ресурсов в вашей подписке
Azure Advisor
Персональный консультант, предоставляющий рекомендации по пяти категориям:
- Надежность (Reliability)
- Безопасность (Security)
- Производительность (Performance)
- Стоимость (Cost) -- где можно сэкономить
- Операционное совершенство (Operational Excellence)
Инструменты управления
| Инструмент | Описание |
|---|---|
| Azure Portal | Веб-интерфейс для управления ресурсами |
| Azure CLI | Кроссплатформенная командная строка |
| Azure PowerShell | PowerShell-модули для Azure |
| Azure Cloud Shell | CLI/PowerShell прямо в браузере |
| ARM Templates | Инфраструктура как код (JSON) |
| Bicep | Современный DSL для IaC (проще ARM) |
| Terraform | Мультиоблачный IaC |