Updated 07.2 Resource функция decort_kvmvm: управление виртуальными машинами на базе KVM. (markdown)

stSolo
2022-03-31 18:48:02 +03:00
parent 90de5145d7
commit 97b011a388

@@ -5,17 +5,18 @@ _Resource_ функция **decort_kvmvm** принимает следующие
| Аргумент | Тип | Описание |
| --- | --- | --- |
| arch | string | Аппаратная архитектура виртуальной машины.<br/>Данный параметр является обязательным и на текущий момент может принимать одно из следующих значений:<br/> * "KVM_X86" - виртуальная машина KVM на аппаратной платформе x86.<br/> * "KVM_PPC" - виртуальная машина KVM на аппаратной платформе IBM Power. |
| boot_disk_size | int | Размер загрузочного диска виртуальной машины в ГБ.<br/>Данный параметр не является обязательным, и если он не задан явно, то платформа установит размер загрузочного диска равным размеру образа ОС, на базе которого создаётся эта виртуальная машина. |
| cloud_init | string | Параметры для утилиты _cloud_init_, которая используется в платформе DECORT для первичного конфигурирования виртуальной машины после её создания.<br/>Данный параметр не является обязательным, используется только на стадии создания новой виртуальной машины и игнорируется во всех других случаях. |
| cpu | int | Количество процессоров.<br/>Данный параметр является обязательным и не может быть нулевым. |
| description | string | Текстовое описание виртуальной машины.<br/>Данный параметр не является обязательным, значение по умолчанию - пустая строка. |
| extra_disks | list of ints | Список идентификаторов дополнительных дисков, которые требуется подключить к данной виртуальной машине помимо загрузочного диска.<br/>Данный параметр не является обязательным, значение по умолчанию - пустой список, т.е. подключение дополнительных дисков не требуется. |
| image_id | int | Идентификатор образа, на базе которого создаётся загрузочный диск виртуальной машины.<br/>Этот параметр является обязательным и не может быть нулевым. |
| name | int | Имя виртуальной машины. Обратите внимание, что имя должно быть уникальным в рамках ресурсной группы.<br/>Этот параметр является обязательным и не может быть пустой строкой. |
| network | dict | Параметры сетевого подключения. Структура словаря:<br/> * (string) `net_type` - тип сети, соответствующей данному подключению. "EXTNET" в случае прямого подключения во внешнюю сеть, "VINS" в случае подключения к Virtual Network Segment.<br/>* (int) `net_id` - идентификатор соответствующего сетевого сегмента: внешней сети в случае `net_type = "EXTNET"` и ViNS в случае `net_type = "VINS"`<br/>* (string) `ip_address` - IP адрес, выделенный данному подключению.<br/>* (string) `mac` - MAC адрес, назначенный соответствующему сетевому интерфейсу виртуальной машины.<br/>Если нужно сконфигурировать несколько сетевых подключений, данный блок можно задавать многократно - по одному на каждое подключение. |
| ram | int | Объём оперативной памяти в МБ.<br/>Данный параметр является обязательным и не может быть нулевым. |
| rg_id | int | Идентификатор ресурсной группы, которой принадлежит данная виртуальная машина.<br/>Этот параметр является обязательным и не может быть нулевым. |
| driver | string | Обязательный параметр, не пустой.<br/>Аппаратная архитектура виртуальной машины.<br/>Может принимать одно из следующих значений:<br/> * "KVM_X86" - виртуальная машина KVM на аппаратной платформе x86.<br/> * "KVM_PPC" - виртуальная машина KVM на аппаратной платформе IBM Power. |
| cpu | int | Обязательный параметр, не равен 0.<br/>Количество процессоров. |
| name | string | Обязательный параметр, не пустой.<br/>Имя виртуальной машины. Обратите внимание, что имя должно быть уникальным в рамках ресурсной группы. |
| rg_id | int | Обязательный параметр, не равен 0.<br/>Идентификатор ресурсной группы, которой принадлежит данная виртуальная машина. |
| ram | int | Обязательный параметр, не равен 0.<br/>Объём оперативной памяти в МБ.<br/> |
| image_id | int | Обязательный параметр, не равен 0.<br/>Идентификатор образа, на базе которого создаётся загрузочный диск виртуальной машины.<br/> |
| boot_disk_size | int | Обязательный параметр.<br/>Размер загрузочного диска виртуальной машины в ГБ. |
| extra_disks | []int | Опциональный параметр.<br/>Список идентификаторов дополнительных дисков, которые требуется подключить к данной виртуальной машине помимо загрузочного диска. |
| cloud_init | string | Опциональный параметр,<br/>используется на этапе создания вм.<br/>Параметры для утилиты _cloud_init_, которая используется в платформе DECORT для первичного конфигурирования виртуальной машины после её создания. |
| network | dict | Опциональный параметр.<br/>Параметры сетевого подключения. Структура словаря:<br/> * (string) `net_type` - тип сети, соответствующей данному подключению. "EXTNET" в случае прямого подключения во внешнюю сеть, "VINS" в случае подключения к Virtual Network Segment.<br/>* (int) `net_id` - идентификатор соответствующего сетевого сегмента: внешней сети в случае `net_type = "EXTNET"` и ViNS в случае `net_type = "VINS"`<br/>* (string) `ip_address` - IP адрес, выделенный данному подключению.<br/>* (string) `mac` - MAC адрес, назначенный соответствующему сетевому интерфейсу виртуальной машины.<br/>Если нужно сконфигурировать несколько сетевых подключений, данный блок можно задавать многократно - по одному на каждое подключение. |
| description | string | Опциональный параметр.<br/>Текстовое описание виртуальной машины. |
| started | bool | Опциональный параметр, флаг запуска машины,<br/>по-умолчанию - true.<br/>Если true - машина включена,<br/>если 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 | Опциональный параметр, флаг запуска машины,<br/>по-умолчанию - true.<br/>Если true - машина включена,<br/>если 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
}
```