Updated 07.02.13 Resource функция decort_disk управление дисковыми ресурсами (markdown)

stSolo
2022-07-27 13:20:41 +03:00
parent 12cd4b3261
commit 91121fd3ae

@@ -5,53 +5,80 @@ _Resource_ функция **decort_disk** принимает следующие
| Аргумент | Тип | Обязательный | Описание |
| --- | --- | --- | --- |
| pool | string | :heavy_check_mark: | Имя пула в системе хранения, на ресурсах которой должен быть размещён данный диск. |
| sep_id | int | :heavy_check_mark: | Идентификатор Storage Endpoint Provider (SEP). SEP это способ идентифицировать конкретную систему хранения, на ресурсах которой должен быть размещён данный диск. |
| size | int | :heavy_check_mark: | Размер диска в ГБ. |
| account_id | int | :x: | Идентификатор подписчика (aka "account"), которому принадлежит данная ресурсная группа.<br/>Этот параметр является обязательным при идентификации уже имеющегося диска по его имени (`name`) или при создании нового диска. |
| description | string | :x: | Текстовое описание диска.<br/>Данный параметр не является обязательным. |
| disk_id | int | :x: | Идентификатор диска. Данный параметр может использоваться только при управлении уже существующим диском.<br/>Если этот параметр явно задан, то `name` и `account_id` игнорируются, а плагин считает, что диск с указанным `disk_id` уже существует. |
| name | string | :x: | Имя диска. Обратите внимание, что имя диска НЕ является уникальным в рамках одного и того же подписчика ("account").<br/>При создании нового диска этот параметр является обязательным и не может быть пустым. |
Для создания диска пользователь облачной платформы, от лица которого происходит обращение к данной функции, должен иметь как минимум доступ на запись к указанному подписчику. В противном случае возникнет ошибка доступа.
Пользователь облачной платформы задается на стадии инициализации 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.)).
| account_id | int | :heavy_check_mark: | id аккаунта |
| disk_name | string | :heavy_check_mark: | Наименование диска |
| size_max | int | :heavy_check_mark: | Размер диска, ГБ |
| gid | int | :heavy_check_mark: | id площадки (grid id) |
| pool | string | :x: | Pool для расположения диска |
| sep_id | int | :x: | id sep |
| desc | string | :x: | Описание диска |
| type | string | Тип диска, не может быть изменен после создания. Доступные значения:<br/>"B" - признак загрузочного диска ("boot").<br/>"D" - признак дополнительного диска ("data") |
| detach | bool | :x: | Отсоединение диска от compute. Используется при удалении |
| permanently | bool | :x: | Мгновенное удаление диска. Используется при удалении |
| reason | string | :x: | Причина удаления. Используется при удалении |
| restore | bool | :x: | Восстановление диска |
| iotune | Struct{<br/>read_bytes_sec int<br/>read_bytes_sec_max int<br/>read_iops_sec int<br/>read_iops_sec_max int<br/>size_iops_sec int<br/>total_bytes_sec int<br/>total_bytes_sec_max int<br/>total_iops_sec int<br/>total_iops_sec_max int<br/>write_bytes_sec int<br/>write_bytes_sec_max int<br/>write_iops_sec int<br/>write_iops_sec_max int<br/>} | :x: | Информация об ограничениях IO диска<br/>Кол-во байт для чтения в секунду<br/>Максимальное кол-во байт для чтения<br/>&nbsp;<br/>Кол-во операций чтения io в секунду<br/>Максимальное число io операций чтения<br/>Размер io операций<br/>Общий размер байт в секунду<br/>Максимальный общий размер байт в секунду<br/>&nbsp;<br/>Общее кол-во io операций в секунду<br/>Максимальное общее кол-во io операций в секунду<br/>&nbsp;<br/>Кол-во байт для записи в секунду<br/>Максимальное кол-во байт для записи в секунду<br/>&nbsp;<br/>Кол-во операций записи в секунду<br/>Максимальное число операций записей<br/>&nbsp;<br/> |
## Возвращаемые значения
В случае успешного выполнения _data source_ функция **decort_disk** возвращает в указанную при вызове переменную следующие значения:
| Параметр | Тип | Описание |
| --- | --- | --- |
| account_id | int | Уникальный идентификатор подписчика-владельца диска. |
| account_name | string | Имя подписчика ("account"), которому принадлежит данный диск. |
| description | string | Текстовое описание диска. |
| account_id | int | Уникальный идентификатор подписчика-владельца диска |
| account_name | string | Имя подписчика ("account"), которому принадлежит данный диск |
| boot_partition | int | Кол-во разделов диска |
| compute_id | int | Идентификатор compute (виртуальной машины) |
| compute_name | string | Название compute (виртуальной машины) |
| created_time | int | Время создания |
| deleted_time | int | Время удаления |
| desc | string | Текстовое описание диска |
| destruction_time | int | Время окончательного удаления |
| devicename | string | Наименование устройства |
| disk_id | int | Идентификатор диска. Дублирует значение параметра `id`. |
| id | int | Идентификатор диска. |
| image_id | int | Идентификатор образа, содержимое которого было склонировано/скопировано в данный диск при его создании. 0 означает, что данный диск не создавался как клон/копия какого-либо образа. |
| name | string | Имя диска. Обратите внимание, что имя диска НЕ является уникальным, и если в рамках одного и того же подписчика ("account") есть несколько дисков с одним и тем же названием, то используется первый из них. |
| pool | string | Имя пула в системе хранения, на ресурсах которой размещён данный диск. |
| sep_id | int | Идентификатор Storage Endpoint Provider (SEP). SEP это способ идентифицировать конкретную систему хранения, на ресурсах которой размещён данный диск. |
| sep_type | string | Тип SEP. Определяет тип системы хранения и содержит одно из заданных в облачной платформе значений. |
| size | int | Размер диска в ГБ. |
| type | string | Тип диска с точки зрения его роли в составе _compute_. Может принимать одно из фиксированных значений:<br/>"B" - признак загрузочного диска ("boot").<br/>"D" - признак дополнительного диска ("data"). |
| disk_path | string | Адрес диска |
| gid | int | Идентификатор площадки (grid id) |
| guid | int | Идентификатор диска |
| id | int | Идентификатор диска |
| image_id | int | Идентификатор образа, содержимое которого было склонировано/скопировано в данный диск при его создании. 0 означает, что данный диск не создавался как клон/копия какого-либо образа |
| images | []int | Идентификаторы образов, использующих диск |
| iotune | Struct{<br/>read_bytes_sec int<br/>read_bytes_sec_max int<br/>read_iops_sec int<br/>read_iops_sec_max int<br/>size_iops_sec int<br/>total_bytes_sec int<br/>total_bytes_sec_max int<br/>total_iops_sec int<br/>total_iops_sec_max int<br/>write_bytes_sec int<br/>write_bytes_sec_max int<br/>write_iops_sec int<br/>write_iops_sec_max int<br/>} | Информация об ограничениях IO диска<br/>Кол-во байт для чтения в секунду<br/>Максимальное кол-во байт для чтения<br/>&nbsp;<br/>Кол-во операций чтения io в секунду<br/>Максимальное число io операций чтения<br/>Размер io операций<br/>Общий размер байт в секунду<br/>Максимальный общий размер байт в секунду<br/>&nbsp;<br/>Общее кол-во io операций в секунду<br/>Максимальное общее кол-во io операций в секунду<br/>&nbsp;<br/>Кол-во байт для записи в секунду<br/>Максимальное кол-во байт для записи в секунду<br/>&nbsp;<br/>Кол-во операций записи в секунду<br/>Максимальное число операций записей<br/>&nbsp;<br/> |
| iqn | string | iqn диска |
| login | string | Логин для доступа к диску |
| milestones | int | Вехи |
| disk_name | string | Наименование диска |
| order | int | Номер диска |
| params | string | Параметры диска |
| parent_id | int | id родительского диска |
| passwd | string | Пароль для доступа к диску |
| pci_slot | int | id pci слота, к которому подключен диск |
| pool | string | Имя пула в системе хранения, на ресурсах которой размещён данный диск |
| purge_attempts | int | Кол-во попыток удаления |
| purge_time | int | Время последней попытки |
| reality_device_number | int | Реальный номер устройства |
| reference_id | int | id ссылки на диск |
| res_id | int | id ресурса |
| res_name | string | Наименование ресурса |
| role | string | Роль диска |
| sep_id | int | Идентификатор Storage Endpoint Provider (SEP). SEP это способ идентифицировать конкретную систему хранения, на ресурсах которой размещён данный диск |
| sep_type | string | Тип SEP. Определяет тип системы хранения и содержит одно из заданных в облачной платформе значений |
| size_max | int | Размер диска в ГБ |
| size_used | int | Кол-во используемого места, в ГБ |
| snapshots | []Struct{<br/>guid string<br/>label string<br/>res_id string<br/>snap_set_guid string<br/>snap_set_time int<br/>timestamp int<br/>} | Снимки состояния диска<br/>id снимка<br/>Наименование снимка<br/>Ссылка на снимок<br/>Установленный id снимка<br/>Установленное время снимка<br/>Время снимка<br/>&nbsp;<br/> |
| status | string | Статус диска |
| tech_status | string | Технический статус диска |
| type | string | Тип диска с точки зрения его роли в составе _compute_. Может принимать одно из фиксированных значений:<br/>"B" - признак загрузочного диска ("boot").<br/>"D" - признак дополнительного диска ("data") |
| vmid | int | Идентификатор виртуальной машины (устаревшее) |
## Пример использования
В нижеприведённом примере с помощью _resource_ функции **decort_disk** создаётся новый диск со следующими характеристиками:
* Имя диска- "MyDisk01"
* Идентификатор подпичсика-владельца ("account") - 100
* Размер диска - 10 ГБ.
* Система хранения, на которой будет размещён ноый диск, идентифицируется как SEP ID = 5
* Пул на указанной системе хранения, где будет размещён диск, называется "data"
```terraform
resource "decort_disk" "my_disk01" {
name = "MyDisk01"
account_id = 100
sep_id = 5
pool = "data"
size_max = 10
gid = 333
}
```
Данный пример подразумевает, что ранее по тексту 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.)).
После успешного завершения такого вызова _resource_ функции **decort_disk** в переменной `decort_disk.my_disk01` будут сохранены возвращаемые значения. В частности, для получения идентификатора диска следует использовать конструкцию `"${decort_disk.my_disk01.id}"`.
После успешного завершения такого вызова _resource_ функции **decort_disk** в переменной `decort_disk.my_disk01` будут сохранены возвращаемые значения. В частности, для получения идентификатора диска следует использовать конструкцию `decort_disk.my_disk01.id`.