Ресурс создали руками в инциденте — как вернуть его под Terraform
Во время ночного инцидента дежурный создал балансировщик через веб-консоль облака, чтобы быстро развести трафик. Утром вы описали такой же балансировщик в коде:
resource "cloud_lb" "public" {
name = "lb-prod-public"
...
}
Запускать terraform apply в этой ситуации опасно: провайдер либо создаст второй балансировщик, либо упадёт на конфликте имени, а трафик сейчас идёт через созданный вручную.
Какой порядок действий здесь корректен?
- Импортировать существующий балансировщик в состояние, затем проверить планом, что расхождений с кодом нет, и довести код до фактической конфигурации
- Выполнить обновление состояния (`terraform refresh`): Terraform сам найдёт существующий балансировщик по имени и подхватит его под управление без дополнительных действий
- Удалить ресурс из состояния и применить конфигурацию заново — так Terraform создаст объект уже под своим управлением
- Пометить ресурс на пересоздание, чтобы Terraform заменил ручной объект на свой и привёл конфигурацию к коду
