Этот проект использует Terraform для автоматизированного развертывания EC2-инстансов в AWS. Вся конфигурация организована через декларативный код Terraform и использует переменные для гибкости.
main.tf
: Основной конфигурационный файл, который описывает ресурсы AWS, такие как EC2-инстанс.variables.tf
: Объявление переменных, используемых для параметризации конфигурации..terraform.tfvars
: Файл, содержащий значения переменных, таких как VPC ID, подсети, размер инстансов и другие параметры.outputs.tf
: Определяет выводы (outputs), такие как публичный IP-адрес инстанса после создания.providers.tf
: Описание провайдеров, таких как AWS, и их конфигурация.install_ec2_docker.sh
: Скрипт для установки Docker на EC2-инстансе, который передается черезuser_data
..gitignore
: Игнорирует файлы, которые не должны быть в системе контроля версий, включая.terraform.tfvars
.
- Установленный Terraform.
- Настроенный AWS CLI с доступом к AWS аккаунту.
- Файл
.terraform.tfvars
, содержащий значения переменных (например, VPC ID, публичные подсети, ключи SSH и т.д.).
Перед началом работы необходимо инициализировать проект для загрузки необходимых плагинов:
terraform init
Для проверки изменений
terraform plan -var-file=".terraform.tfvars"
Для развертывания инфраструктуры
terraform apply -var-file=".terraform.tfvars"
Удаляем
terraform destroy -var-file=".terraform.tfvars"