Terraform для начинающих: первые ресурсы и провайдеры

Мы просто и по делу рассказываем про ИИ-инструменты для работы: сравнения, пошаговые гайды, бесплатные альтернативы и реальные сценарии применения. Помогаем выбрать между ChatGPT, Gemini, Claude, локальными моделями и десятками узкоспециализированных сервисов — от дизайна и HR до аналитики и SEO. Меньше хайпа, больше практики и экономии времени каждый день.

terraformпровайдерыресурсы

Terraform — это инструмент Infrastructure as Code (IaC): он позволяет описывать инфраструктуру в коде и разворачивать её автоматически. Вместо ручной настройки серверов, сетей и облачных сервисов вы создаёте .tf-файлы, а Terraform приводит окружение к нужному состоянию.

Что такое провайдер

Провайдер — это плагин, через который Terraform работает с конкретной платформой: AWS, Yandex Cloud, Azure, Google Cloud, Docker, GitHub и др.
Именно провайдер знает, как создать виртуальную машину, сеть, DNS-запись или контейнер в выбранной системе.

terraform {
  required_providers {
    local = {
      source  = "hashicorp/local"
      version = "~> 2.0"
    }
  }
}

provider "local" {}

Что такое ресурс

Ресурс — это конкретный объект инфраструктуры, которым управляет Terraform: файл, сервер, база данных, сеть, bucket и т.д.

resource "local_file" "example" {
  filename = "hello.txt"
  content  = "Hello, Terraform!"
}

Здесь Terraform создаст файл hello.txt с указанным содержимым.

Как работает Terraform на практике

Базовый процесс обычно такой:

  • terraform init — инициализация проекта и загрузка провайдеров
  • terraform plan — просмотр плана изменений
  • terraform apply — применение изменений
  • terraform destroy — удаление созданных ресурсов

Это помогает избежать неожиданных изменений: сначала вы видите, что именно будет создано или удалено, и только потом подтверждаете выполнение.

Почему это важно новичкам

  • повторяемость — одинаковая инфраструктура в dev, test и prod
  • контроль версий — код можно хранить в Git 📦
  • меньше ручных ошибок
  • быстрый запуск новых окружений

На что обратить внимание в начале

  • Начинайте с простых провайдеров: local, docker
  • Изучите синтаксис HCL — это основной язык Terraform
  • Не редактируйте созданные ресурсы вручную, иначе появится drift
  • Храните terraform.tfstate аккуратно: это файл состояния, по которому Terraform понимает, чем управляет 🔐

Минимальная структура первого проекта

terraform {
  required_providers {
    local = {
      source = "hashicorp/local"
    }
  }
}

provider "local" {}

resource "local_file" "readme" {
  filename = "readme.txt"
  content  = "Мой первый ресурс в Terraform"
}

Terraform для начинающих — это лучший способ понять, как работает современная автоматизация инфраструктуры. Освоив провайдеры, ресурсы, init, plan и apply, вы уже сможете собирать простые, но полезные сценарии для локальной среды и облака 🛠️

Заодно загляните в подборку каналов про IT — там много полезного по DevOps, облакам, автоматизации и разработке 📚

🗣 Подборки каналов
🧠 Каталог ботов и приложений
🗺 Навигация

Читайте так же