Updated 07.01.01 Resource функция decort_kvmvm управление виртуальными машинами на базе KVM (markdown)
@@ -1,5 +1,18 @@
|
|||||||
_Resource_ функция **decort_kvmvm** служит для управления виртуальными машинами, создаваемыми в платформе DECORT на базе технологии виртуализации KVM.
|
_Resource_ функция **decort_kvmvm** служит для управления виртуальными машинами, создаваемыми в платформе DECORT на базе технологии виртуализации KVM.
|
||||||
|
|
||||||
|
## Изменения в 3.2.0
|
||||||
|
Начиная с версии 3.2.0, в ресурсе kvmvm появился дополнительный блок - disk. Данный блок позволяет автоматически создавать диски и прикреплять их к виртуальной машине. Основные отличия от extra_disks заключаются в следующем:
|
||||||
|
- Диск автоматически создается, в extra_disks осуществляется присоединение уже созданных дисков.
|
||||||
|
- Диск позволяет использовать системный образ для создания.
|
||||||
|
|
||||||
|
### Возможные затруднения при работе с блоком disk.
|
||||||
|
По умолчанию, sep_id и pool в платформе выбираются те же, на которых размещается загрузочный диск (создается вместе с виртуальной машиной). Из-за этого, могут возникать ошибки следующего характера:
|
||||||
|
- `Cannot add disk to Compute ID XXX: Pool xxxx does not support disk type X ` - данная ошибка означает то, что выбранный пул не поддерживает выбранные тип диска
|
||||||
|
Пути решения:
|
||||||
|
- Выполнить **decort_disk_list_types_detailed**. Результатом выполнения этой функции станет список доступных пулов хранилища вместе с их идентификаторами (sep_id).
|
||||||
|
- Заполнить поля sep_id и pool подходящими полями для диска.
|
||||||
|
|
||||||
|
|
||||||
## Аргументы
|
## Аргументы
|
||||||
_Resource_ функция **decort_kvmvm** принимает следующие аргументы:
|
_Resource_ функция **decort_kvmvm** принимает следующие аргументы:
|
||||||
|
|
||||||
@@ -23,6 +36,19 @@ _Resource_ функция **decort_kvmvm** принимает следующие
|
|||||||
| ipa_type | string | :x: | Тип аутентификатора |
|
| ipa_type | string | :x: | Тип аутентификатора |
|
||||||
| permanently | bool | :x: | Мгновенное удаление виртуальной машины, минуя корзину. Параметр считывается только при использовании команды `terraform destroy`, то есть только при удалении ресурса |
|
| permanently | bool | :x: | Мгновенное удаление виртуальной машины, минуя корзину. Параметр считывается только при использовании команды `terraform destroy`, то есть только при удалении ресурса |
|
||||||
| detach_disks | bool | :x: | Отсоединение прикрепленных к виртуальной машине дисков перед ее удалением. Параметр считывается только при использовании команды `terraform destroy`, то есть только при удалении ресурса |
|
| detach_disks | bool | :x: | Отсоединение прикрепленных к виртуальной машине дисков перед ее удалением. Параметр считывается только при использовании команды `terraform destroy`, то есть только при удалении ресурса |
|
||||||
|
| disk | см. ниже | :x: | Описание диска. Таких может быть любое кол-во, либо не быть вообще |
|
||||||
|
|
||||||
|
### Описание блока disk
|
||||||
|
| Аргумент | Тип | Обязательный | Описание |
|
||||||
|
| --- | --- | --- | --- |
|
||||||
|
| disk_name | string | :heavy_check_mark: | Наименование диска |
|
||||||
|
| size | int | :heavy_check_mark: | Размер диска, GB |
|
||||||
|
| disk_type | string | :x: | Тип диска. Возможные значения: "D" - диск с данными, "B" - загрузочный диск |
|
||||||
|
| sep_id | int | :x: | ID storage endpoint |
|
||||||
|
| pool | string | :x: | Наименование пула для размещения диска |
|
||||||
|
| desc | string | :x: | Описание диска |
|
||||||
|
| image_id | int | :x: | ID образа |
|
||||||
|
| permanently | bool | :x: | Флаг для удаления диска. Если выставлен в true - диск будет моментально удален с платформы, иначе будет добавлен в корзину и его можно будет восстановить. Значение поля считывается только при операции `terraform destroy`. По умолчанию - false |
|
||||||
|
|
||||||
## Возвращаемые значения
|
## Возвращаемые значения
|
||||||
В случае успешного выполнения _resource_ функция **decort_kvmvm** возвращает в указанную при вызове переменную следующие значения:
|
В случае успешного выполнения _resource_ функция **decort_kvmvm** возвращает в указанную при вызове переменную следующие значения:
|
||||||
@@ -54,6 +80,20 @@ _Resource_ функция **decort_kvmvm** принимает следующие
|
|||||||
| ipa_type | string | Тип аутентификатора |
|
| ipa_type | string | Тип аутентификатора |
|
||||||
| permanently | bool | Мгновенное удаление виртуальной машины, минуя корзину. Параметр считывается только при использовании команды `terraform destroy`, то есть только при удалении ресурса |
|
| permanently | bool | Мгновенное удаление виртуальной машины, минуя корзину. Параметр считывается только при использовании команды `terraform destroy`, то есть только при удалении ресурса |
|
||||||
| detach_disks | bool | Отсоединение прикрепленных к виртуальной машине дисков перед ее удалением. Параметр считывается только при использовании команды `terraform destroy`, то есть только при удалении ресурса |
|
| detach_disks | bool | Отсоединение прикрепленных к виртуальной машине дисков перед ее удалением. Параметр считывается только при использовании команды `terraform destroy`, то есть только при удалении ресурса |
|
||||||
|
| disk | см. ниже | Описание диска. Таких может быть любое кол-во, либо не быть вообще |
|
||||||
|
|
||||||
|
### Описание блока disk
|
||||||
|
| Аргумент | Тип | Описание |
|
||||||
|
| --- | --- | --- |
|
||||||
|
| disk_id | int | ID диска |
|
||||||
|
| disk_name | string | Наименование диска |
|
||||||
|
| size | int | Размер диска, GB |
|
||||||
|
| disk_type | string | Тип диска. Возможные значения: "D" - диск с данными, "B" - загрузочный диск |
|
||||||
|
| sep_id | int | ID storage endpoint |
|
||||||
|
| pool | string | Наименование пула для размещения диска |
|
||||||
|
| desc | string | Описание диска |
|
||||||
|
| image_id | int | ID образа |
|
||||||
|
| permanently | bool | Флаг для удаления диска. Если выставлен в true - диск будет моментально удален с платформы, иначе будет добавлен в корзину и его можно будет восстановить. Значение поля считывается только при операции `terraform destroy`. По умолчанию - false |
|
||||||
|
|
||||||
## Пример использования
|
## Пример использования
|
||||||
В нижеприведённом примере с помощью _resource_ функции **decort_kvmvm** создаётся виртуальная машина (экземпляр _compute_ в терминологии платформы DECORT) следующими характеристиками:
|
В нижеприведённом примере с помощью _resource_ функции **decort_kvmvm** создаётся виртуальная машина (экземпляр _compute_ в терминологии платформы DECORT) следующими характеристиками:
|
||||||
@@ -63,6 +103,7 @@ _Resource_ функция **decort_kvmvm** принимает следующие
|
|||||||
* Идентификатор ресурсной группы, в которой создаётся виртуальная машина - поступает из переменной _decort_resgroup.my_rg.id_
|
* Идентификатор ресурсной группы, в которой создаётся виртуальная машина - поступает из переменной _decort_resgroup.my_rg.id_
|
||||||
* Идентификатор образа ОС, который будет установлен на загрузочный диск - поступает из переменной _data.decort_image.os_image.id_
|
* Идентификатор образа ОС, который будет установлен на загрузочный диск - поступает из переменной _data.decort_image.os_image.id_
|
||||||
* Виртуальная машина будет иметь одно сетевое подключение - во внешнюю сеть с идентификатором 12, IP адрес этого подключения платформа установит автоматически
|
* Виртуальная машина будет иметь одно сетевое подключение - во внешнюю сеть с идентификатором 12, IP адрес этого подключения платформа установит автоматически
|
||||||
|
* Для виртуальной машины будет создан и автоматически подключен диск с именем "test_disk" и размером в 10 GB. Созданный диск будет иметь тип "D", размещен в pool "test_pool", в хранилище с идентификатором 3. Данный диск будет создан с системным образом, который имеет идентификатор 3456.
|
||||||
|
|
||||||
```terraform
|
```terraform
|
||||||
resource "decort_kvmvm" "my_new_vm" {
|
resource "decort_kvmvm" "my_new_vm" {
|
||||||
@@ -80,6 +121,14 @@ resource "decort_kvmvm" "my_new_vm" {
|
|||||||
net_type = "EXTNET"
|
net_type = "EXTNET"
|
||||||
net_id = 12
|
net_id = 12
|
||||||
}
|
}
|
||||||
|
disk{
|
||||||
|
disk_name = "test_disk"
|
||||||
|
size = 10
|
||||||
|
sep_id = 3
|
||||||
|
pool = "test_pool"
|
||||||
|
image_id = 3456
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
#started = true
|
#started = true
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user