Terraform – инструмент инфраструктуры как кода (IaC) компании HashiCorp, выпущенный в 2014 году. Инфраструктура описывается на декларативном языке HCL: серверы, сети, базы данных, балансировщики, DNS. Terraform сравнивает описание с текущим состоянием и строит план изменений.
Основные понятия
- Провайдеры – плагины для облаков и систем.
- Ресурсы и модули.
- Состояние (state) – сведения о созданных ресурсах.
- Команды plan и apply: просмотр изменений и их применение.
Лицензия и форк
В 2023 году HashiCorp сменила лицензию Terraform с MPL 2.0 на Business Source License. Сообщество создало открытый форк OpenTofu под эгидой Linux Foundation.
В России
Российские облачные провайдеры публикуют собственные провайдеры Terraform. Из-за ограничений доступа к официальному реестру HashiCorp используют зеркала провайдеров и OpenTofu.
Что важно
- Хранение состояния в защищённом удалённом хранилище с блокировками.
- Ревью планов изменений.
- Управление секретами вне кода.