Виртуальная машина
C помощью Terraform вы можете создавать виртуальные машины (ВМ) любой конфигурации.
Чтобы создать ВМ, добавьте в конфигурацию следующий блок кода:
hcl
data "mws_compute_image" "image" {
image = "mws-ubuntu-2204-lts-v20250529"
project = "mws-ubuntu"
}
resource "mws_compute_disk" "disk" {
disk = "<имя диска>""
disk_type = "diskTypes/nbs-pl2"
iops = 1000
size = "10GB"
source = {
image = data.mws_compute_image.image.metadata.id
}
}
resource "mws_compute_disk" "data_disk" {
disk = "<имя диска>"
disk_type = "diskTypes/nbs-pl2"
iops = 1000
size = "20GB"
}
resource "mws_compute_virtual_machine" "vm" {
virtual_machine = var.vm_name
vm_type = "vmTypes/gen-2-8"
metadata = {
attributes = {
user-data = <атрибуты пользовательских метаданных>
}
}
hardware = {
power = "ON"
graceful_shutdown_timeout = "1m 30s"
}
storage = {
disks = [
{
name = "boot"
boot = true
disk = {
ref = mws_compute_disk.disk.metadata.id
}
},
{
name = "data"
boot = false
disk = {
ref = mws_compute_disk.data_disk.metadata.id
}
}
]
}
network = {
network_interfaces = [
{
name = "<имя ВМ>-network-interface-primary"
primary = true
addresses = [
{
address = {
ref = mws_vpc_address.vm_primary_network_interface_address.metadata.id
}
}
]
}
]
}
}Здесь:
основные параметры (секция
vm):virtual_machine— уникальное имя ВМ;vm_type— тип ВМ;
метаданные ВМ (секция
metadata):name— отображаемое имя ВМ;attributes— атрибуты пользовательских метаданных;
аппаратные характеристики ВМ (секция
hardware)power— указывает, нужно ли включить ВМ после создания (ON— включить,OFF— не включать);graceful_shutdown_timeout— время для безопасного завершения работы (graceful shutdown);
диски(секция
disks):name— отображаемое имя диска;boot— указывает, является ли диск загрузочным (true— является,false— не является);disk— ссылка на диск.
сеть (секция
network_interfaces):name— отображаемое имя сетевого интерфейса;primary— указывает, является ли сетевой интерфейс основным (true— является,false— не является);address— ссылка на внутренний IP-адрес сетевого интерфейса.