From e20342c76821c983083b41916356b2b437d05996 Mon Sep 17 00:00:00 2001 From: stSolo Date: Mon, 31 Oct 2022 15:54:05 +0300 Subject: [PATCH] =?UTF-8?q?Updated=2007.01.01=20Resource=20=D1=84=D1=83?= =?UTF-8?q?=D0=BD=D0=BA=D1=86=D0=B8=D1=8F=20decort=5Fkvmvm=20=D1=83=D0=BF?= =?UTF-8?q?=D1=80=D0=B0=D0=B2=D0=BB=D0=B5=D0=BD=D0=B8=D0=B5=20=D0=B2=D0=B8?= =?UTF-8?q?=D1=80=D1=82=D1=83=D0=B0=D0=BB=D1=8C=D0=BD=D1=8B=D0=BC=D0=B8=20?= =?UTF-8?q?=D0=BC=D0=B0=D1=88=D0=B8=D0=BD=D0=B0=D0=BC=D0=B8=20=D0=BD=D0=B0?= =?UTF-8?q?=20=D0=B1=D0=B0=D0=B7=D0=B5=20KVM=20(markdown)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...m-управление-виртуальными-машинами-на-базе-KVM.md | 49 +++++++++++++++++++ 1 file changed, 49 insertions(+) diff --git a/07.01.01-Resource-функция-decort_kvmvm-управление-виртуальными-машинами-на-базе-KVM.md b/07.01.01-Resource-функция-decort_kvmvm-управление-виртуальными-машинами-на-базе-KVM.md index a3d6e49..7746738 100644 --- a/07.01.01-Resource-функция-decort_kvmvm-управление-виртуальными-машинами-на-базе-KVM.md +++ b/07.01.01-Resource-функция-decort_kvmvm-управление-виртуальными-машинами-на-базе-KVM.md @@ -1,5 +1,18 @@ _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** принимает следующие аргументы: @@ -23,6 +36,19 @@ _Resource_ функция **decort_kvmvm** принимает следующие | ipa_type | string | :x: | Тип аутентификатора | | permanently | 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** возвращает в указанную при вызове переменную следующие значения: @@ -54,6 +80,20 @@ _Resource_ функция **decort_kvmvm** принимает следующие | ipa_type | string | Тип аутентификатора | | permanently | 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) следующими характеристиками: @@ -63,6 +103,7 @@ _Resource_ функция **decort_kvmvm** принимает следующие * Идентификатор ресурсной группы, в которой создаётся виртуальная машина - поступает из переменной _decort_resgroup.my_rg.id_ * Идентификатор образа ОС, который будет установлен на загрузочный диск - поступает из переменной _data.decort_image.os_image.id_ * Виртуальная машина будет иметь одно сетевое подключение - во внешнюю сеть с идентификатором 12, IP адрес этого подключения платформа установит автоматически +* Для виртуальной машины будет создан и автоматически подключен диск с именем "test_disk" и размером в 10 GB. Созданный диск будет иметь тип "D", размещен в pool "test_pool", в хранилище с идентификатором 3. Данный диск будет создан с системным образом, который имеет идентификатор 3456. ```terraform resource "decort_kvmvm" "my_new_vm" { @@ -80,6 +121,14 @@ resource "decort_kvmvm" "my_new_vm" { net_type = "EXTNET" net_id = 12 } + disk{ + disk_name = "test_disk" + size = 10 + sep_id = 3 + pool = "test_pool" + image_id = 3456 + } + #started = true }