img

Terraform - для чего он нужен и как установить

В данной статье мы рассмотрим, что такое Terraform и для чего он нужен.

Terraform - для чего он нужен

1.Обзор

Terraform – Open Source проект от HashiCorp создан в 2014 году. Является превосходным инструментом для создания Инфраструктуре в коде (Infrastructure as a Code). Проект абсолютно бесплатный и можно даже скомпилировать его из исходников, изменить его, т.е полностью открытый проект. Данный продукт является превосходным инструментом для создания инфраструктуры в коде. Сайт продукта https://www.terraform.io.

И так, что это такое? Язык программирования инфраструктуры в cloud, не важно какой cloud. AWS, Google Cloud, Microsoft Azure, Digital Ocean, Yandex, AliCloud и есть поддержка многого другого, в том числе плагины под VMware. С помощью данного программного обеспечения можно даже управлять репозиторием Git Hub. Данный продукт является отличным для написания IaaS кода.

Синтаксис кода пишется на Hashicorp Configuration Language (HCL). Файлы, содержащие написанный вами код, должны иметь расширение tf. Это обычные текстовые файлы на программном языке. Можно использовать любой текстовый редактор с дополнительными плагинами для Terraform, чтобы система подсказывала, поправляла, давала подсветку или раскрашивала код для удобства, чтения. Очень удобный для этой цели использовать текстовый редактор Atom. Код после написания не требует никакой компиляции, т.е просто пишите свой текстовый файл на HCL и запускаете просто с помощью Terraform. Terraform работает на Windows, MacOS, Linux, т.к он написан на языке Go, компилируете под операционную систему и запускаете, где угодно.

Если рассмотреть конкурентов, то это AWS CloudFormation – инструмент для написания кода для AWS, он не кроссплатформенный и позволяет писать код только для AWS. Следующий конкурент Ansible - с помощью него тоже можно создавать инфраструктуру, через код, но он на мой взгляд слишком громоздкий и не очень удобный. Есть еще Puppet и Chef. Вот самые популярные инструменты конкуренты для создания инфраструктуры из кода.


2. Установка на Windows

Установка на операционную систему MS Windows достаточна простая. Переходим на основной сайт продукта и выбираем операционную систему MS Windows нужной разрядности нажимаем, скачиваем. После закачки мы получим файл в zip архиве. Распаковываем и получаем файл terraform.exe. В принципе этого для работы достаточно, но неудобно. В такой конфигурации необходимо каждый раз вводить путь к файлу terraform.exe. Чтобы этого избежать необходимо добавить путь в переменные среды Windows. В операционной системе Windows 10 нажимаем правой кнопкой Пуск, выбираем Система, в открывшемся окне слева выбираем Сведения о cистеме, далее переходим на вкладку Дополнительно, далее внизу кнопка Переменные среды. В нижнем окне создаем новую переменную terraform и путь к месту, где лежит файл.


3. Установка в Linux

Установка Terraform на Linux происходит не сложнее, чем на Windows. Открываем в браузере официальный сайт, выбираем разрядность Linux и копируем адрес ссылки на файл в буфер обмена. Открываем Terminal. Создаем или переходим в нужную директорию mkdir terraform или cd /tmp. Скачиваем wget URL и в директории появляется нужный файл.

Файл

Распаковываем unzip terraform_0.15.1_linux_amd64.zip. В результате распакуется один исполняемый файл terraform. Осталось перенести файл откуда он будет запускаться с любой директории sudo mv terraform /bin. Директория с бинарными файлами. После этого мы можем вызывать терраформ из любого места командой terraform.

Ссылка
скопирована
Получите бесплатные уроки на наших курсах
Все курсы
DevOps
Скидка 25%
DevOps-инженер с нуля
Научитесь использовать инструменты и методы DevOps для автоматизации тестирования, сборки и развертывания кода, управления инфраструктурой и ускорения процесса доставки продуктов в продакшн. Станьте желанным специалистом в IT-индустрии и претендуйте на работу с высокой заработной платой.
Получи бесплатный
вводный урок!
Пожалуйста, укажите корректный e-mail
отправили вводный урок на твой e-mail!
Получи все материалы в telegram и ускорь обучение!
img
Еще по теме:
img
Git Flow - это специальная система ветвления для Git. Она помогает команде лучше контролировать и добавлять различные версии про
img
Docker — популярная платформа виртуализации на уровне ОС. Она поставляет приложения в пакетах (контейнерах), которые, представля
img
Хуки в Git — это bash-скрипты, которые запускаются до или после команд Git, например, коммитов и пушей. Они позволяют автоматизи
img
  Nomad и Kubernetes – это две самые популярные платформы оркестровки, предназначенные для оркестровки динамических рабочих нагр
img
  Давайте узнаем о новом Ops-течении – GitOps! DevOps поспособствовал цифровизации многих компаний. Речь идет о командах разрабо
img
  Канареечное (canary) развёртывание – это метод разработки и развертывания программного обеспечения, который позволяет выпускат
ЗИМНИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59