Почему требуется сохранять файл состояния Terraform удаленно?
Я новичок в терраформе. Может кто-нибудь объяснить, пожалуйста
почему мы должны сохранять файл.tfstate в локальном или удаленном хранилище,
когда terraform apply всегда обновляет файл состояния с новой инфраструктурой.
Заранее спасибо.
2 ответа
Файл состояния отслеживает ресурсы, которыми управляет Terraform, независимо от того, создал они их или импортировали. Обновление Terraform только обнаруживает дрейф в управляемых ресурсах и не обнаружит, если вы создали новые ресурсы вне файла состояния.
Если вы потеряете государство, вы в конечном итоге получите потерянные ресурсы, которыми не управляет Terraform. Если по какой-то причине вы согласны с этим или у вас есть какой-то другой способ поделиться состоянием с другими членами команды /CI и создать резервную копию, то все в порядке.
Конечно, использование удаленного состояния Terraform точно решает эти проблемы, поэтому вы должны использовать его, если вам небезразлично какое-либо из этих явлений или вы думаете, что это может понадобиться в будущем (вероятно, так и будет).
Я добавлю более ориентированную на разработчиков перспективу, чтобы помочь понять.
Подумайте о том, что вы используете yarn
или же npm
сделать приложение NodeJS, package.json
как твой tf
файлы, в то время как yarn.lock
или же package-lock.json
,
Не воспринимайте буквально, так как файл состояния terraform имеет физическое значение.