diff --git a/07.2-Resource-функция-decort_kvmvm:-управление-виртуальными-машинами-на-базе-KVM..md b/07.2-Resource-функция-decort_kvmvm:-управление-виртуальными-машинами-на-базе-KVM..md index 02c50d3..625c099 100644 --- a/07.2-Resource-функция-decort_kvmvm:-управление-виртуальными-машинами-на-базе-KVM..md +++ b/07.2-Resource-функция-decort_kvmvm:-управление-виртуальными-машинами-на-базе-KVM..md @@ -5,17 +5,18 @@ _Resource_ функция **decort_kvmvm** принимает следующие | Аргумент | Тип | Описание | | --- | --- | --- | -| arch | string | Аппаратная архитектура виртуальной машины.
Данный параметр является обязательным и на текущий момент может принимать одно из следующих значений:
* "KVM_X86" - виртуальная машина KVM на аппаратной платформе x86.
* "KVM_PPC" - виртуальная машина KVM на аппаратной платформе IBM Power. | -| boot_disk_size | int | Размер загрузочного диска виртуальной машины в ГБ.
Данный параметр не является обязательным, и если он не задан явно, то платформа установит размер загрузочного диска равным размеру образа ОС, на базе которого создаётся эта виртуальная машина. | -| cloud_init | string | Параметры для утилиты _cloud_init_, которая используется в платформе DECORT для первичного конфигурирования виртуальной машины после её создания.
Данный параметр не является обязательным, используется только на стадии создания новой виртуальной машины и игнорируется во всех других случаях. | -| cpu | int | Количество процессоров.
Данный параметр является обязательным и не может быть нулевым. | -| description | string | Текстовое описание виртуальной машины.
Данный параметр не является обязательным, значение по умолчанию - пустая строка. | -| extra_disks | list of ints | Список идентификаторов дополнительных дисков, которые требуется подключить к данной виртуальной машине помимо загрузочного диска.
Данный параметр не является обязательным, значение по умолчанию - пустой список, т.е. подключение дополнительных дисков не требуется. | -| image_id | int | Идентификатор образа, на базе которого создаётся загрузочный диск виртуальной машины.
Этот параметр является обязательным и не может быть нулевым. | -| name | int | Имя виртуальной машины. Обратите внимание, что имя должно быть уникальным в рамках ресурсной группы.
Этот параметр является обязательным и не может быть пустой строкой. | -| network | dict | Параметры сетевого подключения. Структура словаря:
* (string) `net_type` - тип сети, соответствующей данному подключению. "EXTNET" в случае прямого подключения во внешнюю сеть, "VINS" в случае подключения к Virtual Network Segment.
* (int) `net_id` - идентификатор соответствующего сетевого сегмента: внешней сети в случае `net_type = "EXTNET"` и ViNS в случае `net_type = "VINS"`
* (string) `ip_address` - IP адрес, выделенный данному подключению.
* (string) `mac` - MAC адрес, назначенный соответствующему сетевому интерфейсу виртуальной машины.
Если нужно сконфигурировать несколько сетевых подключений, данный блок можно задавать многократно - по одному на каждое подключение. | -| ram | int | Объём оперативной памяти в МБ.
Данный параметр является обязательным и не может быть нулевым. | -| rg_id | int | Идентификатор ресурсной группы, которой принадлежит данная виртуальная машина.
Этот параметр является обязательным и не может быть нулевым. | +| driver | string | Обязательный параметр, не пустой.
Аппаратная архитектура виртуальной машины.
Может принимать одно из следующих значений:
* "KVM_X86" - виртуальная машина KVM на аппаратной платформе x86.
* "KVM_PPC" - виртуальная машина KVM на аппаратной платформе IBM Power. | +| cpu | int | Обязательный параметр, не равен 0.
Количество процессоров. | +| name | string | Обязательный параметр, не пустой.
Имя виртуальной машины. Обратите внимание, что имя должно быть уникальным в рамках ресурсной группы. | +| rg_id | int | Обязательный параметр, не равен 0.
Идентификатор ресурсной группы, которой принадлежит данная виртуальная машина. | +| ram | int | Обязательный параметр, не равен 0.
Объём оперативной памяти в МБ.
| +| image_id | int | Обязательный параметр, не равен 0.
Идентификатор образа, на базе которого создаётся загрузочный диск виртуальной машины.
| +| boot_disk_size | int | Обязательный параметр.
Размер загрузочного диска виртуальной машины в ГБ. | +| extra_disks | []int | Опциональный параметр.
Список идентификаторов дополнительных дисков, которые требуется подключить к данной виртуальной машине помимо загрузочного диска. | +| cloud_init | string | Опциональный параметр,
используется на этапе создания вм.
Параметры для утилиты _cloud_init_, которая используется в платформе DECORT для первичного конфигурирования виртуальной машины после её создания. | +| network | dict | Опциональный параметр.
Параметры сетевого подключения. Структура словаря:
* (string) `net_type` - тип сети, соответствующей данному подключению. "EXTNET" в случае прямого подключения во внешнюю сеть, "VINS" в случае подключения к Virtual Network Segment.
* (int) `net_id` - идентификатор соответствующего сетевого сегмента: внешней сети в случае `net_type = "EXTNET"` и ViNS в случае `net_type = "VINS"`
* (string) `ip_address` - IP адрес, выделенный данному подключению.
* (string) `mac` - MAC адрес, назначенный соответствующему сетевому интерфейсу виртуальной машины.
Если нужно сконфигурировать несколько сетевых подключений, данный блок можно задавать многократно - по одному на каждое подключение. | +| description | string | Опциональный параметр.
Текстовое описание виртуальной машины. | +| started | bool | Опциональный параметр, флаг запуска машины,
по-умолчанию - true.
Если true - машина включена,
если false - выключена. | ## Возвращаемые значения В случае успешного выполнения _resource_ функция **decort_kvmvm** возвращает в указанную при вызове переменную следующие значения: @@ -24,7 +25,7 @@ _Resource_ функция **decort_kvmvm** принимает следующие | --- | --- | --- | | account_id | int | Уникальный идентификатор подписчика-владельца ("account") данной виртуальной машины. | | account_name | string | Имя подписчика, которому принадлежит данная виртуальная машина. | -| arch | string | Аппаратная архитектура данной виртуальной машины. | +| driver | string | Аппаратная архитектура данной виртуальной машины. | | boot_disk_id | int | Идентификатор загрузочного диска виртуальной машины. | | boot_disk_size | int | Размер загрузочного диска в ГБ. | | compute_id | int | Идентификатор экземпляра _compute_, соответствующего данной виртуальной машине. | @@ -40,6 +41,7 @@ _Resource_ функция **decort_kvmvm** принимает следующие | ram | int | Объём оперативной памяти в МБ, выделенной этой виртуальной машине. | | rg_id | int| Идентификатор ресурсной группы, к которой принадлежит виртуальная машина. | | rg_name | string | Имя ресурсной группы, к которой принадлежит виртуальная машина. | +| started | bool | Опциональный параметр, флаг запуска машины,
по-умолчанию - true.
Если true - машина включена,
если false - выключена. | ## Пример использования В нижеприведённом примере с помощью _resource_ функции **decort_kvmvm** создаётся виртуальная машина (экземпляр _compute_ в терминологии платформы DECORT) следующими характеристиками: @@ -50,11 +52,11 @@ _Resource_ функция **decort_kvmvm** принимает следующие * Идентификатор образа ОС, который будет установлен на загрузочный диск - поступает из переменной _data.decort_image.os_image.id_ * Виртуальная машина будет иметь одно сетевое подключение - во внешнюю сеть с идентификатором 12, IP адрес этого подключения платформа установит автоматически -``` +```terraform resource "decort_kvmvm" "my_new_vm" { name = "tf-managed-vm" rg_id = decort_resgroup.my_rg.id - arch = "KVM_X86" # "KVM_PPC" for IBM Power or "KVM_X86" for Intel + driver = "KVM_X86" # "KVM_PPC" for IBM Power or "KVM_X86" for Intel cpu = 1 # CPU count ram = 1024 # RAM size in MB, must be even number, ideally a power of 2 boot_disk_size = 10 # Boot disk size in GB @@ -66,6 +68,8 @@ resource "decort_kvmvm" "my_new_vm" { net_type = "EXTNET" net_id = 12 } + + #started = true } ```