Terraform — это инструмент с открытым исходным кодом, созданный компанией HashiCorp, для управления инфраструктурой как кодом (Infrastructure as Code, IaC). Он позволяет описывать инфраструктуру с использованием декларативного языка HCL (HashiCorp Configuration Language) или JSON, а затем автоматизированно развертывать, изменять и удалять ее.
Ключевые особенности Terraform:
- Декларативность: Вы описываете желаемое состояние инфраструктуры, а Terraform сам определяет действия для его достижения.
- Иммутабельность: Terraform предпочитает создавать новые ресурсы вместо изменения существующих при значительных изменениях конфигурации, что повышает надежность и предсказуемость.
- Провайдеры: Поддержка большого количества поставщиков облачных услуг (AWS, Azure, GCP), а также других сервисов (Kubernetes, Docker, databases) через систему провайдеров.
- Состояние: Terraform отслеживает состояние развернутой инфраструктуры в файле состояния (state file), что позволяет ему понимать текущее состояние и вычислять необходимые изменения.
- Модули: Возможность создания переиспользуемых блоков конфигурации для организации кода и упрощения управления сложными инфраструктурами.
- Планирование: Перед применением изменений Terraform показывает план действий, который будет выполнен, что позволяет избежать неожиданн
Terraform — это инструмент с открытым исходным кодом, созданный компанией HashiCorp, для управления инфраструктурой как кодом (Infrastructure as Code, IaC). Он позволяет описывать инфраструктуру с использованием декларативного языка HCL (HashiCorp Configuration Language) или JSON, а затем автоматизированно развертывать, изменять и удалять ее.
Ключевые особенности Terraform:
- Декларативность: Вы описываете желаемое состояние инфраструктуры, а Terraform сам определяет действия для его достижения.
- Иммутабельность: Terraform предпочитает создавать новые ресурсы вместо изменения существующих при значительных изменениях конфигурации, что повышает надежность и предсказуемость.
- Провайдеры: Поддержка большого количества поставщиков облачных услуг (AWS, Azure, GCP), а также других сервисов (Kubernetes, Docker, databases) через систему провайдеров.
- Состояние: Terraform отслеживает состояние развернутой инфраструктуры в файле состояния (state file), что позволяет ему понимать текущее состояние и вычислять необходимые изменения.
- Модули: Возможность создания переиспользуемых блоков конфигурации для организации кода и упрощения управления сложными инфраструктурами.
- Планирование: Перед применением изменений Terraform показывает план действий, который будет выполнен, что позволяет избежать неожиданн