Terraform — це програмний інструмент інфраструктури як коду, створений компанією HashiCorp. Користувачі визначають і описують інфраструктуру центру обробки даних за допомогою декларативної мови конфігурації, відомої як HashiCorp Configuration Language (HCL) або, за бажанням, JSON.[3]

Terraform
ТипІнфраструктура як код
АвториMitchell Hashimoto et al.
РозробникHashiCorp
Перший випуск28 липня, 2014; 9 років тому (2014-07-28)
Стабільний випуск1.6.6 (13 грудня, 2023; 6 місяців тому (2023-12-13)[1])
Операційна системаLinux, FreeBSD, macOS, OpenBSD, Solaris, and Microsoft Windows
Мова програмуванняGo
Доступні мовиEnglish
ЛіцензіяBusiness Source License v1.1[2](source-available)
Репозиторійgithub.com/hashicorp/terraform
Вебсайтterraform.io

Terraform управляє зовнішніми ресурсами (такими як загальнодоступна хмарна інфраструктура, інфраструктура приватної хмари, мережеві пристрої, програмне забезпечення як послуга та платформа як послуга) з постачальниками. Замість використання імперативних команд для створення ресурсів, Terraform використовує декларативну конфігурацію для опису бажаного кінцевого стану. Як тільки користувач викликає Terraform для цього ресурсу, Terraform буде виконувати дії CRUD від імені користувача для досягнення бажаного стану. Інфраструктура як код може бути написана у вигляді модулів, що забезпечує можливість повторного використання та підтримку коду.

Terraform підтримує низку постачальників хмарної інфраструктури, таких як Amazon Web Services, Microsoft Azure, IBM Cloud, Google Cloud Platform, DigitalOcean, Oracle Cloud, VMware vSphere та OpenStack.

HashiCorp також підтримує реєстр модулів Terraform, запущений у 2017 році. У 2019 році Terraform представила платну версію Terraform Enterprise для великих організацій.

Команди

ред.

У Terraform є чотири основні команди:

$ terraform init

$ terraform plan

$ terraform apply

$ terraform destroy

Зміна ліцензії

ред.

Раніше вихідний код Terraform буа відкритим і доступний за версією 2.0 Mozilla Public License (MPL). 10 серпня 2023 року компанія HashiCorp прийняла ліцензію Business Source License v1.1 для багатьох своїх продуктів, включаючи Terraform [4]. В Business Source License ліцензії, на відміну від MPL, вихідний код не є відкритим[5], а натомість - тільки доступний. У відповідь група користувачів опублікувала маніфест OpenTF 15 серпня, в якому закликала HashiCorp продовжити публікавати Terraform під ліцензією з відкритим вихідним кодом.[6] Згодом, 25 серпня, група оголосила, що у випадку відсутності будь-якої позитивної відповіді від HashiCorp вони зроблять відгалуження Terraform як OpenTofu на основі останньої доступної версії коду програмного забезпечення з ліцензією MPL (v1.5.5) і працюватимуть над тим, щоб проект прийняли під опіку Linux Foundation.[7]

Посилання

ред.
  1. Releases - hashicorp/terraform. Процитовано 11 August 2023 — через GitHub.
  2. LICENSE — через GitHub.
  3. Syntax - Configuration Language.
  4. Dadgar, Armon. HashiCorp adopts Business Source License. HashiCorp Blog. HashiCorp. Процитовано 26 August 2023.
  5. Business Source License 1.1. MariaDB.
  6. The OpenTofu Manifesto. opentofu.org (англ.). 15 серпня 2023. Процитовано 23 вересня 2023.
  7. OpenTofu Announces Fork of Terraform. opentofu.org (англ.). 25 серпня 2023. Процитовано 23 вересня 2023.