Terraform

Опубликовано

На все данные актуальны

Terraform - инструмент от HashiCorp, который использует подход "инфраструктура как код" для управления облачной инфраструктурой. Он позволяет декларативно описывать ресурсы (виртуальные машины, сети, диски и т.п.) и управлять ими с помощью текстовых конфигураций на языке HCL (HashiCorp Configuration Language). Terraform автоматически рассчитывает зависимости, строит план изменений и упрощает повторное развёртывание инфраструктуры по сохранённым конфигурациям.

Далее мы рассмотрим установку Terraform на разных операционных системах, настройку провайдера OpenStack для работы с облачной инфраструктурой Сервер Молл Cloud через Terraform, а также познакомимся с переменными и основными командами. В разделах документации об облачной инфраструктуре (например, "Диск", "Создать диск") помимо графического интерфейса (GUI) и командной строки (CLI) будут приведены готовые блоки HCL и примеры команд Terraform для управления соответствующими ресурсами.

Кратко о HCL

HCL использует пары "ключ-значение" в каждом блоке, аналогично формату JSON. Это позволяет описывать ресурсы и конфигурации с помощью строк, чисел, булевых значений, списков (list) и словарей (map). HCL поддерживает переменные и ссылки на другие ресурсы, а файлы конфигурации Terraform имеют расширение .tf. Для конфигураций в формате JSON используется расширение .tf.json. Язык обладает лаконичным синтаксисом, структура задаётся блоками и атрибутами. В Terraform можно выносить повторяющиеся части конфигурации в модули с входными переменными и выходными значениями.

Подробнее о Terraform: