Terraform

Terraform

Что такое Terraform?

Terraform - это инструмент инфраструктуры как кода, позволяющий безопасно и эффективно создавать, изменять и версировать облачные и локальные ресурсы.

HashiCorp Terraform - это инструмент инфраструктуры в виде кода, позволяющий определять облачные и локальные ресурсы в человекочитаемых конфигурационных файлах, которые можно версировать, повторно использовать и совместно использовать. Затем вы можете использовать последовательный рабочий процесс для обеспечения и управления всей вашей инфраструктурой на протяжении всего ее жизненного цикла.

Terraform может управлять низкоуровневыми компонентами, такими как вычислительные ресурсы, ресурсы хранения и сетевые ресурсы, а также высокоуровневыми компонентами, такими как записи DNS и функции SaaS.

Как работает Terraform?

Terraform создает и управляет ресурсами на облачных платформах и других сервисах через их интерфейсы прикладного программирования (API). Провайдеры позволяют Terraform работать практически с любой платформой или сервисом с доступным API.

Terraform

Terraform создает и управляет облачными платформами и сервисами через их API.

HashiCorp и сообщество Terraform уже написали тысячи провайдеров для управления различными типами ресурсов и сервисов. В реестре Terraform можно найти все общедоступные провайдеры, включая Amazon Web Services (AWS), Azure, Google Cloud Platform (GCP), Kubernetes, Helm, GitHub, Splunk, DataDog и многие другие.

Terraform

Основной рабочий процесс Terraform состоит из трех этапов:

  • Запись: Вы определяете ресурсы, которые могут находиться у нескольких облачных провайдеров и служб. Например, вы можете создать конфигурацию для развертывания приложения на виртуальных машинах в сети виртуального частного облака (VPC) с группами безопасности и балансировщиком нагрузки.

  • План: Terraform создает план выполнения, описывающий инфраструктуру, которую он будет создавать, обновлять или уничтожать на основе существующей инфраструктуры и вашей конфигурации.

  • Применить: После утверждения Terraform выполняет предложенные операции в правильном порядке, соблюдая все зависимости от ресурсов. Например, если вы обновляете свойства VPC и изменяете количество виртуальных машин в этом VPC, Terraform воссоздаст VPC перед масштабированием виртуальных машин.

Источники