From 644c632b30aa54f5a844ccd00c3ed625c2cfe425 Mon Sep 17 00:00:00 2001
From: svs1370 <34687689+svs1370@users.noreply.github.com>
Date: Wed, 15 Sep 2021 17:05:45 +0300
Subject: [PATCH] =?UTF-8?q?Created=2006.2=20Data=20=D1=84=D1=83=D0=BD?=
=?UTF-8?q?=D0=BA=D1=86=D0=B8=D1=8F=20decort=5Fkvmvm:=20=D0=BF=D0=BE=D0=BB?=
=?UTF-8?q?=D1=83=D1=87=D0=B5=D0=BD=D0=B8=D0=B5=20=D0=B8=D0=BD=D1=84=D0=BE?=
=?UTF-8?q?=D1=80=D0=BC=D0=B0=D1=86=D0=B8=D0=B8=20=D0=BE=20=D0=B2=D0=B8?=
=?UTF-8?q?=D1=80=D1=82=D1=83=D0=B0=D0=BB=D1=8C=D0=BD=D0=BE=D0=B9=20=D0=BC?=
=?UTF-8?q?=D0=B0=D1=88=D0=B8=D0=BD=D0=B5=20=D0=BD=D0=B0=20=D0=B1=D0=B0?=
=?UTF-8?q?=D0=B7=D0=B5=20KVM.=20(markdown)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
...чение-информации-о-виртуальной-машине-на-базе-KVM..md | 62 +++++++++++++++++++
1 file changed, 62 insertions(+)
create mode 100644 06.2-Data-функция-decort_kvmvm:-получение-информации-о-виртуальной-машине-на-базе-KVM..md
diff --git a/06.2-Data-функция-decort_kvmvm:-получение-информации-о-виртуальной-машине-на-базе-KVM..md b/06.2-Data-функция-decort_kvmvm:-получение-информации-о-виртуальной-машине-на-базе-KVM..md
new file mode 100644
index 0000000..f159f78
--- /dev/null
+++ b/06.2-Data-функция-decort_kvmvm:-получение-информации-о-виртуальной-машине-на-базе-KVM..md
@@ -0,0 +1,62 @@
+_Data source_ функция **decort_kvmvm** служит для получения информации об уже существующей в облачной платформе виртуальной машине (Virtual Machine, VM), созданной на базе системы виртуализации KVM.
+
+## Аргументы
+_Data source_ функция **decort_kvmvm** принимает следующие аргументы:
+
+| Аргумент | Тип | Описание |
+| --- | --- | --- |
+| name | string | Имя виртуальной машины. Для идентификации виртуальной машины по её имени также необходимо указать идентификатор ресурсной группы, которой она принадлежит (`rg_id`).
Обратите внимание, что имя виртуальной машины уникально только в рамках одной и той же ресурсной группы и не может быть пустым.
Альтернативным способом идентификации виртуальной машины является задание параметра `compute_id`. |
+| rg_id | int | Идентификатор ресурсной группы, которой принадлежит данный виртуальный сервер.
Данный аргумент является обязательным, если идентификация виртуальной машины выполняется по её имени. |
+| compute_id | int | Идентификатор экземпляра _compute_, соответствующего данной виртуальной машине (подробнее о понятии _compute_ см. в разделе [Обзор облачной платформы DECORT](https://github.com/rudecs/terraform-provider-decort/wiki/03.-%D0%9E%D0%B1%D0%B7%D0%BE%D1%80-%D0%BE%D0%B1%D0%BB%D0%B0%D1%87%D0%BD%D0%BE%D0%B9-%D0%BF%D0%BB%D0%B0%D1%82%D1%84%D0%BE%D1%80%D0%BC%D1%8B-DECORT.)). Если задан этот параметр, то параметры `name` и `rg_id` игнорируются. |
+
+Пользователь облачной платформы, от лица которого происходит обращение к данной функции, должен иметь доступ к указанному виртуальному серверу и ресурсной группе. В противном случае возникнет ошибка доступа.
+
+Пользователь облачной платформы задается на стадии инициализации Terraform провайдера DECORT (см. [подробности](https://github.com/rudecs/terraform-provider-decort/wiki/05.-%D0%98%D0%BD%D0%B8%D1%86%D0%B8%D0%B0%D0%BB%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F-Terraform-%D0%BF%D1%80%D0%BE%D0%B2%D0%B0%D0%B9%D0%B4%D0%B5%D1%80%D0%B0-DECORT.)).
+
+## Возвращаемые значения
+В случае успешного выполнения _data source_ функция **decort_kvmvm** возвращает в указанную при вызове переменную следующие значения:
+
+| Параметр | Тип | Описание |
+| --- | --- | --- |
+| account_id | int | Уникальный идентификатор подписчика-владельца ("account") данной виртуальной машины. |
+| account_name | string | Имя подписчика, которому принадлежит данная виртуальная машина. |
+| arch | string | Аппаратная архитектура данной виртуальной машины. |
+| boot_disk_id | int | Идентификатор загрузочного диска виртуальной машины. |
+| boot_disk_size | int | Размер загрузочного диска в ГБ. |
+| compute_id | int | Идентификатор экземпляра _compute_, соответствующего данной виртуальной машине. |
+| cpu | int | Количество виртуальных CPU, выделенных данному серверу. |
+| description | string | Текстовое описание виртуальной машины. |
+| extra_disks | list of ints | Список идентификаторов дополнительных дисков, которые подключены к данной виртуальной машине помимо загрузочного диска. Если такие диски отсутствуют, то список будет пустым. |
+| id | int | Уникальный идентификатор этой виртуальной машины в облачной платформе. Всегда совпадает с `compute_id`. |
+| image_id | int | Идентификатор образа ОС, на базе которого создан загрузочный диск этой виртуальной машины. |
+| image_name | string | Имя образа ОС, на базе которого создан загрузочный диск этой виртуальной машины. |
+| name | string | Имя виртуального сервера.
Возвращаемое значение `name` совпадает со значением соответствующего аргумента, переданного при вызове функции. |
+| network | list of dicts | Характеристики сетевых сегментов, к которым подключен данный сервер. Формат структуры:
* (string) `net_type` - тип сети, соответствующей данному подключению.
* (int) `net_id` - идентификатор соответствующего сетевого сегмента.
* (string) `ip_address` - IP адрес, выделенный данному подключению.
* (string) `mac` - MAC адрес, назначенный соответствующему сетевому интерфейсу виртуальной машины. |
+| os_users | list of dicts | Имена и пароли пользователей гостевой ОС, установленные платформой при создании виртуального сервера. Формат структуры:
* (string) `login` - учётная запись в гостевой ОС.
* (string) `password` - пароль к этой учётной записи. |
+| ram | int | Объём оперативной памяти в МБ, выделенной этой виртуальной машине. |
+| rg_id | int| Идентификатор ресурсной группы, к которой принадлежит виртуальная машина. |
+| rg_name | string | Имя ресурсной группы, к которой принадлежит виртуальная машина. |
+
+
+## Пример использования
+В нижеприведённом примере посредством вызова _data source_ функции **decs_vm** извлекается информация об уже существующем в платформе виртуальном сервере со следующими характеристиками:
+* Имя сервера _MyOldVM_;
+* Идентификатор ресурсной группы, в которой находится данный сервер - 123.
+
+```
+data "decort_kvmvm" "existing_vm" {
+ name = "MyOldVM" # this is the name of pre-existing virtual machine
+ rgid = 123 # this is the ID of resource group, where VM named "MyOldVM" is found
+}
+# Once the above directive completes, VM ID will be accessible
+# as "${data.decort_kvmvm.existing_vm.id}"
+```
+
+Данный пример подразумевает, что ранее по тексту tf-файла выполнена корректная инициализация провайдера (подробнее об инициализации Terraform провайдера DECORT см. соответствующий [раздел](https://github.com/rudecs/terraform-provider-decort/wiki/05.-%D0%98%D0%BD%D0%B8%D1%86%D0%B8%D0%B0%D0%BB%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F-Terraform-%D0%BF%D1%80%D0%BE%D0%B2%D0%B0%D0%B9%D0%B4%D0%B5%D1%80%D0%B0-DECORT.)).
+
+Чтобы получить идентификатор ресурсной группы (аргумент `rg_id`), можно воспользоваться _data source_ функцией [decort_resgroup](https://github.com/rudecs/terraform-provider-decort/wiki/06.1-Data-%D1%84%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D1%8F-decs_resgroup:-%D0%BF%D0%BE%D0%BB%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D0%B5-%D0%B8%D0%BD%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%86%D0%B8%D0%B8-%D0%BE-%D1%80%D0%B5%D1%81%D1%83%D1%80%D1%81%D0%BD%D0%BE%D0%B9-%D0%B3%D1%80%D1%83%D0%BF%D0%BF%D0%B5.).
+
+После успешного завершения такого вызова **decort_kvmvm** в переменной `data.decort_kvmvm.existing_vm` будут сохранены возвращаемые значения. Так, например:
+* пароль для доступа в гостевую ОС, назначенный по умолчанию при создании VM - `"${data.decort_kvmvm.existing_vm.os_users.0.password}"`
+* идентификатор образа ОС, на базе которого была создана данная VM - `"${data.decort_kvmvm.existing_vm.image_id}"`
+* текущий объём ОЗУ - `"${data.decort_kvmvm.existing_vm.ram}"`
\ No newline at end of file