Вступить в клуб →
лёгкаявопросCI/CD и инфраструктура как код

Terraform plan показывает must be replaced для продовой базы

Вы поменяли один параметр у продовой базы данных и открыли merge request. В выводе плана:

  # database.main must be replaced
-/+ resource "database_instance" "main" {
      ~ engine_version = "14" -> "15" # forces replacement
      ~ id             = "db-prod-01" -> (known after apply)
    }

Plan: 1 to add, 0 to change, 1 to destroy.

Как это читать?

  • Terraform обновит базу на месте: строка про destroy относится к устаревшей записи в state-файле, которую провайдер заменит новой сразу после применения плана
  • Terraform удалит существующую базу и создаст новую: это простой и потеря данных, применять такой план вслепую нельзя
  • Terraform выполнит миграцию версии движка без остановки, поскольку `id` сохраняется
  • Знак `-/+` означает, что ресурс будет заново импортирован в state без изменений в инфраструктуре

🔒 Проверка ответа — для участников клуба

  • Проверка ответа
  • Подсказка, если застряли
  • Разбор с объяснением, почему так
  • Прогресс по всем задачам и виртуальные собеседования
Зарегистрироваться →

Регистрация занимает минуту

Другие задачи раздела