Что такое Terraform?
Terraform это инструмент инфраструктуры как кода от HashiCorp. Вы описываете серверы, сети и облачные сервисы в файлах конфигурации, а Terraform создаёт или изменяет реальную инфраструктуру в соответствии с ними.
Поговорить с инженером База знаний
Что это такое
Без такого инструмента инфраструктуру строят, щёлкая по веб-консоли, и потом никто не может сказать, что именно было настроено. С Terraform инженер пишет файлы, в которых указано, что должно существовать: две виртуальные машины заданного размера, частная сеть, правило межсетевого экрана, бакет хранилища.
Terraform обращается к каждой платформе через провайдер, плагин, знающий API этой платформы. Есть провайдеры для AWS, Microsoft Azure, Google Cloud, сервисов DNS и многих других, а также провайдеры, поддерживаемые сообществом, для Proxmox VE. Одна конфигурация может охватывать несколько из них.
План, применение и состояние
- План: Terraform сравнивает файлы с тем, что существует, и перечисляет, что он создал бы, изменил или удалил. Пока ничего не затрагивается.
- Применение: после того как кто-то прочитал план, Terraform вносит только эти изменения.
- Состояние: Terraform ведёт файл состояния, в котором записано, какие реальные ресурсы относятся к какой части конфигурации. Он может содержать пароли и другие чувствительные значения, поэтому его хранят в защищённом общем месте, а не на одном ноутбуке.
Что это дает бизнесу
- Запись об инфраструктуре: файлы, хранящиеся в Git, показывают, что существует и почему было сделано каждое изменение.
- Никаких сюрпризов в день изменений: план показывает, что именно произойдёт, до того как что-либо будет удалено.
- Воспроизводимые среды: тестовую среду или второй объект можно построить из тех же файлов, что и рабочую.
Terraform и Ansible
Terraform создаёт инфраструктуру: машины, сети и облачные сервисы. Ansible настраивает то, что работает на этих машинах, после того как они появились. Многие команды используют оба.
Лицензия и OpenTofu
В 2023 году HashiCorp перевела Terraform с открытой лицензии на Business Source License, которая ограничивает использование в продуктах, конкурирующих с HashiCorp. В ответ был создан OpenTofu как ответвление с открытым исходным кодом, который теперь является проектом Linux Foundation. Он читает тот же язык конфигурации. В 2025 году IBM завершила покупку HashiCorp.
Как KawaConnect работает с инфраструктурой как кодом
Мы храним инфраструктуру как код в системе контроля версий, ведём Kubernetes через GitOps и строим кластеры Proxmox VE и решения на Microsoft Azure. Описание этой инфраструктуры в файлах позволяет повторять сборку и отслеживать каждое изменение.
Связанные услуги
Облачная инфраструктура
Azure, гибридные решения, миграции и планирование восстановления.
Консалтинг по Proxmox
Кластеры, высокая доступность и миграции с VMware.
Консалтинг по Kubernetes
Кластеры, изменяемые через Git с помощью GitOps.
Подробнее
- Документация TerraformРуководства и справочник HashiCorp по языку конфигурации и командной строке.
- Terraform RegistryПубличный каталог провайдеров и повторно используемых модулей с документацией по каждому.
- OpenTofuОтветвление Terraform с открытым исходным кодом, поддерживаемое под эгидой Linux Foundation.
- Terraform в ВикипедииНейтральный обзор инструмента, его истории и смены лицензии в 2023 году.
Инфраструктуру строят щелчками мыши?
Расскажите, где работают ваши серверы и облачные сервисы. Мы объясним, что потребуется, чтобы описать их в файлах, и что это изменит для вас.
Начать разговор