Prog Academy
RU UA
DevOps и облака

Что такое Terraform?

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

Подход декларативный: вы описываете результат, а не последовательность команд. Перед применением Terraform показывает план — список предстоящих изменений, — и это резко снижает риск случайно снести рабочий ресурс.

Инструмент работает с AWS, Azure, Google Cloud и десятками других провайдеров через единый язык конфигурации HCL. Текущее состояние инфраструктуры хранится в state-файле, который в командной работе размещают в общем защищённом хранилище.

Связанные термины

Infrastructure as Code

Infrastructure as Code — подход, при котором серверы, сети, базы и права доступа описываются в конфигурационных файлах и создаются автоматически по этому описанию, вместо ручной настройки через веб-интерфейс облака.

DevOps

DevOps — подход к разработке, в котором создание программы и её эксплуатация объединены в один процесс: та же команда отвечает и за код, и за то, как он собирается, разворачивается и работает на серверах. Цель — выпускать изменения часто, быстро и безопасно.

Cloud Computing

Облачные технологии — аренда вычислительных ресурсов у провайдера вместо покупки собственных серверов. Компания берёт нужные мощности, базы и сервисы по требованию и платит только за фактическое потребление.

AWS

AWS (Amazon Web Services) — крупнейшая облачная платформа, предоставляющая сотни сервисов: виртуальные серверы, хранилища, базы данных, сети, инструменты машинного обучения и мониторинга. Ресурсы арендуются по мере необходимости, оплата — за использование.

CI/CD

CI/CD — автоматический конвейер, через который проходит каждое изменение кода: сборка, запуск тестов и доставка готовой версии на серверы. Разработчик отправляет код в репозиторий, а всё остальное происходит без ручных действий.