Создайте экземпляр EC2 на AWS с помощью Terraform
На этой странице
- Предварительные требования
- Запишите файлы конфигурации Terraform для создания экземпляра EC2.
- Создайте инстанс EC2 с помощью файлов конфигурации Terraform.
В этой статье мы увидим, как создать экземпляр EC2 с помощью Terraform. Прежде чем продолжить, я предполагаю, что вы знакомы с основами Terraform и экземпляра AWS EC2. Если вы хотите научиться создавать экземпляр EC2 из консоли AWS, нажмите здесь.
Предпосылки
- Основные сведения о Terraform.
- Terraform установлен в вашей системе.
- Аккаунт AWS (создайте, если у вас его нет).
- access_key и secret_key пользователя AWS IAM. (Нажмите здесь, чтобы узнать, как создать пользователя IAM с ключом доступа и секретным ключом в AWS, )
Что мы будем делать
- Запись файлов конфигурации Terraform для создания экземпляра EC2.
- Создайте EC2 с помощью файлов конфигурации Terraform.
- Удалите созданный экземпляр EC2 с помощью Terraform.
Напишите файлы конфигурации Terraform для создания экземпляра EC2.
Создайте специальный каталог, в котором вы сможете создавать файлы конфигурации terraform.
Используйте следующую команду, чтобы создать каталог и изменить на него текущий рабочий каталог.
mkdir terraform
cd terraform/
Я использую \vim\ в качестве редактора для записи в файлы, вы можете использовать редактор по вашему выбору и скопировать и вставить следующие конфигурации для создания переменных.tf, terraform.tfvars и main.tf
Создайте main.tf, который отвечает за создание EC2 на AWS. Этот файл main.tf будет считывать значения переменных из переменных.tf и terraform.tfvars.
vim main.tf
provider "aws" { access_key = "${var.access_key}" secret_key = "${var.secret_key}" region = "eu-west-3" } resource "aws_instance" "ec2_instance" { ami = "${var.ami_id}" count = "${var.number_of_instances}" subnet_id = "${var.subnet_id}" instance_type = "${var.instance_type}" key_name = "${var.ami_key_pair_name}" }
Измените значение региона, если вы хотите создать экземпляр в другом регионе, отличном от того, который я указал.
Создайте файл variable.tf, содержащий объявление и определение переменных.
vim variables.tf
variable "access_key" { description = "Access key to AWS console" } variable "secret_key" { description = "Secret key to AWS console" } variable "instance_name" { description = "Name of the instance to be created" default = "test" } variable "instance_type" { default = "t2.micro" } variable "subnet_id" { description = "The VPC subnet the instance(s) will be created in" default = "subnet-a5a72ce8" } variable "ami_id" { description = "The AMI to use" default = "ami-096b8af6e7e8fb927" } variable "number_of_instances" { description = "number of instances to be created" default = 1 } variable "ami_key_pair_name" { default = "tomcat" }
Создав файл Variables.tf, не забудьте изменить значения, присвоенные переменной. Вы должны изменить ami_key_pair_name, ami_id и subnet_id, так как они относятся к моей среде. Вы можете оставить остальную переменную как есть.
Создайте terraform.tfvars, который содержит определение переменных access_key и secret_key, определенных в приведенном выше файле. Мы сохранили объявление этих двух переменных в файле terraform.tfvars.
Следующие ключи необходимо изменить на ключи вашего пользователя IAM.
vim terraform.tfvars
access_key = "AKIAQ6GAIA5XIHHM2GJM" secret_key = "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"
Теперь у вас должно быть 3 файла, а именно, variable.tf, terraform.tfvars и main.tf.
Создайте инстанс EC2, используя файлы конфигурации Terraform.
Прежде чем выполнять следующие команды, убедитесь, что вы настроили действительный ключ доступа и секретный ключ.
Первая используемая команда — terraform init. Эта команда загружает и устанавливает плагины для провайдеров, используемых в конфигурации. В нашем случае это AWS.
terraform init
Вторая используемая команда — terraform plan. Эта команда используется для просмотра изменений, которые произойдут в инфраструктуре.
terraform plan
Команда terraform apply создаст ресурсы на AWS, указанные в файле main.tf. Вам будет предложено внести свой вклад для создания ресурсов.
terraform apply
Выполнив приведенную выше команду, вы увидите, что в выходных данных был добавлен 1 новый ресурс, а 0 удалено.
Вы можете перейти в консоль AWS EC2, чтобы проверить, создан экземпляр EC2 или нет.
Удалите созданный экземпляр EC2 с помощью Terraform.
Если вам больше не нужны ресурсы, которые вы создали с помощью конфигурации, указанной в файле main.tf, вы можете использовать команду \terraform destroy\, чтобы удалить все эти ресурсы.
terraform destroy
Заключение
В этой статье мы увидели шаги по созданию экземпляра EC2 в выбранном нами регионе. Мы также видели, как можно удалить экземпляр.