Как настроить базу данных HA/DR в AWS? [7 — Динамическое определение бэкенда Terraform].

В этом посте мы рассмотрим кое-что, что может быть действительно полезным для использования одного и того же скрипта в нескольких средах или для нескольких проектов без изменения кода!


Чтобы сделать этот волшебный трюк, мы динамически определим бэкенд, который мы будем использовать для хранения состояния Terraform.

Объявление бэкенда

Во-первых, нам нужно объявить в скрипте, какой тип бэкенда мы хотим использовать.

В нашем примере это будет AWS S3.

terraform {
  ...
  backend "s3" {}
  ...
}
Войти в полноэкранный режим Выход из полноэкранного режима

Динамическая магия

Чтобы иметь динамическое определение бэкенда, необходимо добавить объявление некоторых параметров в качестве опций команды terraform init.

Параметры бэкенда

  • bucket : Имя ведра S3, в котором вы хотите хранить состояние Terraform.
  • key : Путь к файлу состояния Terraform в ведре S3. Обычно именно этот параметр обновляется, чтобы убедиться, что каждое состояние terraform расположено в отдельном месте.
  • регион : Регион, в котором находится ведро.
  • шифровать Булево значение, чтобы узнать, хотите ли вы зашифровать файл (если у вас есть сомнения, установите его в true).

Параметр команды

Чтобы передать бэкенду параметры, у вас есть несколько способов сделать это:

  • объявить параметр с ключом=значением

-backend-config=’bucket=test’

  • объявить файл tfvars, который содержит некоторые/все конфигурации

-backend-config=’configs/configs_backend.tfvars’


Затем вам просто нужно будет указать правильные параметры при использовании команд terraform, и вы сможете определить несколько инфра одним скриптом!


Надеюсь, это поможет вам! 🍺

И до скорой встречи в следующей части этой серии. 😀


Ссылка на серию

  • 1 — Начало : https://dev.to/adaendra/how-to-setup-a-hadr-database-in-aws-1-1ko7
  • 2 — Определения : https://dev.to/adaendra/how-to-setup-a-hadr-database-in-aws-2-definitions-93p
  • 3 — Простая база данных : https://dev.to/adaendra/how-to-setup-a-hadr-database-in-aws-3-simple-database-a9o
  • 4 — База данных HA : https://dev.to/adaendra/how-to-setup-a-hadr-database-in-aws-4-ha-database-4kek
  • 5 — База данных DR : https://dev.to/adaendra/how-to-setup-a-hadr-database-in-aws-5-dr-database-278b
  • 6 — Создание из моментального снимка : https://dev.to/adaendra/how-to-setup-a-hadr-database-in-aws-6-create-from-snapshot-2mbf
  • 7 — Определение бэкенда Dynamic Terraform : https://dev.to/adaendra/how-to-setup-a-hadr-database-in-aws-7-dynamic-terraform-backend-definition-3aga
  • 8 — Несколько экземпляров в нескольких регионах : https://dev.to/adaendra/how-to-setup-a-hadr-database-in-aws-8-multiple-instances-in-multiple-regions-210d
  • 9 — Генерирование случайного значения : https://dev.to/adaendra/how-to-setup-a-hadr-database-in-aws-9-generate-a-random-value-5g8a

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *