- Дата публикации
Как использовать ИИ, чтобы Terraform‑инфраструктура в Azure не расползалась
Что появилось / что изменилось
Microsoft описала практический сценарий: как подключить ИИ (например, GitHub Copilot) к стандартному циклу работы с Terraform и Azure, чтобы быстрее находить ошибки и дрейф инфраструктуры.
Ключевые новшества не в новых сервисах Azure, а в методике:
- AI‑прослойка поверх уже существующих инструментов: Terraform, Azure Policy, Azure Resource Graph.
- Чёткий shift‑left‑подход: ловим проблемы ещё на ноутбуке разработчика и в pull request, а не в проде.
- Отдельный «drift‑gate»: обязательный этап
terraform plan -refresh-only -detailed-exitcodeперед применением изменений. - Набор типовых промптов для Copilot: для обзора Terraform‑плана, анализа дрейфа и приоритизации нарушений Azure Policy.
Важно: ИИ здесь не применяет изменения и не одобряет их автоматически. Он только сжимает огромные логи и планы до понятных резюме и подсвечивает риски.
Как это работает
Microsoft опирается на стандартный Terraform‑цикл и добавляет к нему ИИ‑подсказки.
-
Локальная проверка на машине разработчика:
terraform initterraform validate
-
Проверки на уровне pull request:
- форматирование
terraform fmt; - линтеры (TFLint);
- security‑сканеры IaC (tfsec, Checkov и др.).
- форматирование
-
Детерминированный план:
terraform plan -out=tfplan— план сохраняется в файл, который потом применяют без пересчёта.
-
ИИ‑обзор Terraform‑плана:
- разработчик отправляет содержимое плана в Copilot с промптом наподобие:
- выдели изменения по безопасности, сети, идентификации;
- оцени риски простоя;
- найди изменения вне стандартных модулей;
- сделай короткое резюме «под подпись».
- разработчик отправляет содержимое плана в Copilot с промптом наподобие:
-
Drift‑gate перед apply:
terraform plan -refresh-only -detailed-exitcode;- код выхода 0 — дрейфа нет, 2 — дрейф есть, 1 — ошибка.
- так команда ловит ручные правки в портале, экстренные фиксы и внешнюю автоматизацию, которая обошла Terraform.
-
Человеческое одобрение:
- люди смотрят на сам план, результаты drift‑проверки, ИИ‑резюме и влияние на политики.
-
Применение без сюрпризов:
terraform apply tfplan— применяется ровно тот план, который все просмотрели.
Параллельно Azure Resource Graph и Change Analysis дают картину фактического состояния и истории изменений. Примеры запросов:
- Кто менял ресурсы за последние 7 дней:
resourcechangesс разборомchangedBy,clientType,operation.
- Дрейф тегов:
- выборка resource groups без тега
Owner.
- выборка resource groups без тега
- Azure Policy:
PolicyResourcesс подсчётом нарушений поpolicyAssignmentNameиcomplianceState.
ИИ здесь группирует изменения по актёрам и типам клиентов, ищет подозрительные паттерны и предлагает, какие guardrails добавить.
Что это значит для вас
Если вы управляете Azure через Terraform и уже завалены планами, логами и отчётами по политикам, эта схема помогает не утонуть в данных.
Где это полезно:
- Команды с большим количеством pull request. Copilot превращает 500‑строчный план в страницу резюме: что ломает сеть, что трогает IAM, где возможен даунтайм.
- Организации с жёстким комплаенсом. Drift‑gate на
-refresh-onlyне даёт тихо жить ручным правкам в портале. Всё либо откатывается, либо попадает в Terraform. - Ops‑команды, которые следят за «гигиеной» тегов и политик. Запросы к Azure Resource Graph плюс ИИ‑группировка нарушений помогают понять, где реально горит, а где просто косметика.
Где не стоит рассчитывать на магию:
- ИИ не заменяет Terraform, Azure Policy, RBAC и код‑ревью. Если процессы хаотичны, Copilot не спасёт.
- Автоматическое «почини всё» здесь сознательно отсутствует. Любое исправление — через человека.
С точки зрения доступности: GitHub Copilot и Azure‑сервисы официально не ориентированы на рынок России, для доступа часто нужен VPN и зарубежный аккаунт.
Практический минимум, который можно внедрить:
- Обязательный
terraform plan -out=tfplanи-refresh-only -detailed-exitcodeв CI. - Шаблоны промптов для Copilot, зашитые в репозиторий.
- Пара стандартных Kusto‑запросов к Azure Resource Graph для отслеживания дрейфа.
Место на рынке
Microsoft не предлагает отдельный ИИ‑продукт для дрейфа, а собирает готовые кирпичи:
- Terraform как источник желаемого состояния.
- Azure Resource Graph и Change Analysis как источник фактического состояния.
- Azure Policy как система правил.
- GitHub Copilot как ИИ‑слой для чтения и интерпретации больших текстовых выводов.
Прямых числовых сравнений с другими решениями нет. Здесь фокус не на скорости или цене, а на том, как встроить ИИ в уже существующий Azure‑стек без изменения базовых инструментов.
Если вы уже живёте в экосистеме Microsoft и Terraform, эта методика логично дополняет их. Если же ваша инфраструктура крутится в AWS или вы используете другие ИИ‑ассистенты вместо Copilot, идеи shift‑left, drift‑gate и библиотека промптов всё равно легко переносимы на вашу среду.