|
|
|
|
_Data source_ функция **dynamix_disk_list** служит для получения информации об имеющихся дисках.
|
|
|
|
|
|
|
|
|
|
## Аргументы
|
|
|
|
|
_Data source_ функция **dynamix_disk_list** принимает следующие аргументы:
|
|
|
|
|
|
|
|
|
|
| Аргумент | Тип | Обязательный | Описание |
|
|
|
|
|
| --- | --- | --- | --- |
|
|
|
|
|
| by_id | int | :x: | Фильтр по ID диска |
|
|
|
|
|
| name | string | :x: | Фильтр по имени диска |
|
|
|
|
|
| account_name | string | :x: | Фильтр по имени аккаунта |
|
|
|
|
|
| disk_max_size | int | :x: | Фильтр по макс. размеру диска |
|
|
|
|
|
| status | string | :x: | Фильтр по статусу |
|
|
|
|
|
| shared | bool | :x: | Фильтр по значению shared |
|
|
|
|
|
| account_id | int | :x: | id аккаунта для получения списка дисков |
|
|
|
|
|
| type | string | :x: | Тип диска. Возможные типы: "B" - boot_disk, "D" - data_disk |
|
|
|
|
|
| sep_id | int | :x: | Фильтр по SEP id. SEP это способ идентифицировать конкретную систему хранения, на ресурсах которой размещён данный диск |
|
|
|
|
|
| pool_name | string | :x: | Фильтр по наименованию pool |
|
|
|
|
|
| sort_by | string | :x: | Фильтр по одному из поддерживаемых полей, формат: +или- название поля |
|
|
|
|
|
| page | int | :x: | Номер страниц |
|
|
|
|
|
| size | int | :x: | Размер страницы |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## Возвращаемые значения
|
|
|
|
|
В случае успешного выполнения _data source_ функция **dynamix_disk_list** возвращает в указанную при вызове переменную, в поле _items_ массив, каждый элемент которого состоит из следующих параметров:
|
|
|
|
|
|
|
|
|
|
| Параметр | Тип | Описание |
|
|
|
|
|
| --- | --- | --- |
|
|
|
|
|
| account_id | int | Уникальный идентификатор подписчика-владельца диска |
|
|
|
|
|
| account_name | string | Имя подписчика ("account"), которому принадлежит данный диск |
|
|
|
|
|
| acl | string | Acces Control List |
|
|
|
|
|
| computes | Struct{} [см. ниже](#описание-структуры-computes) | Информация о компьютах (виртуальных машинах) |
|
|
|
|
|
| created_time | int | Время создания |
|
|
|
|
|
| deleted_time | int | Время удаления |
|
|
|
|
|
| desc | string | Текстовое описание диска |
|
|
|
|
|
| destruction_time | int | Время окончательного удаления |
|
|
|
|
|
| devicename | string | Наименование устройства |
|
|
|
|
|
| disk_id | int | Идентификатор диска. Дублирует значение параметра `id`. |
|
|
|
|
|
| gid | int | Идентификатор площадки (grid id) |
|
|
|
|
|
| id | int | Идентификатор диска |
|
|
|
|
|
| image_id | int | Идентификатор образа, содержимое которого было склонировано/скопировано в данный диск при его создании. 0 означает, что данный диск не создавался как клон/копия какого-либо образа |
|
|
|
|
|
| images | []int | Идентификаторы образов, использующих диск |
|
|
|
|
|
| iotune | Struct{}[см. ниже](#описание-структуры-iotune) | Информация об ограничениях IO диска |
|
|
|
|
|
| machine_id | int | id машины (устаревшее) |
|
|
|
|
|
| machine_name | string | Наименование машины (устаревшее) |
|
|
|
|
|
| disk_name | string | Наименование диска |
|
|
|
|
|
| order | int | Номер диска |
|
|
|
|
|
| params | string | Параметры диска |
|
|
|
|
|
| parent_id | int | id родительского диска |
|
|
|
|
|
| pci_slot | int | id pci слота, к которому подключен диск |
|
|
|
|
|
| pool | string | Имя пула в системе хранения, на ресурсах которой размещён данный диск |
|
|
|
|
|
| present_to | []int | Список ID ресурсов, которым предоставлен диск |
|
|
|
|
|
| purge_time | int | Время удаления |
|
|
|
|
|
| replication | Struct{} [см. ниже](#описание-структуры-replication) | Информация о реплике диска |
|
|
|
|
|
| res_id | int | id ресурса |
|
|
|
|
|
| res_name | string | Наименование ресурса |
|
|
|
|
|
| role | string | Роль диска |
|
|
|
|
|
| sep_id | int | Идентификатор Storage Endpoint Provider (SEP). SEP это способ идентифицировать конкретную систему хранения, на ресурсах которой размещён данный диск |
|
|
|
|
|
| sep_type | string | Тип SEP. Определяет тип системы хранения и содержит одно из заданных в облачной платформе значений |
|
|
|
|
|
| shareable | bool | Флаг, отвечающий за доступность диска дургим ресурсам |
|
|
|
|
|
| size_max | int | Размер диска в ГБ |
|
|
|
|
|
| size_used | float | Кол-во используемого места, в ГБ |
|
|
|
|
|
| snapshots | []Struct{}[см. ниже](#описание-структуры-snapshots) | Снимки состояния диска |
|
|
|
|
|
| status | string | Статус диска |
|
|
|
|
|
| tech_status | string | Технический статус диска |
|
|
|
|
|
| type | string | Тип диска с точки зрения его роли в составе _compute_. Может принимать одно из фиксированных значений:<br/>"B" - признак загрузочного диска ("boot").<br/>"D" - признак дополнительного диска ("data") |
|
|
|
|
|
| vmid | int | Идентификатор виртуальной машины (устаревшее) |
|
|
|
|
|
|
|
|
|
|
### Описание структуры computes
|
|
|
|
|
| Параметр | Тип | Описание |
|
|
|
|
|
| --- | --- | --- |
|
|
|
|
|
| compute_id | int | Идентификатор компьюта |
|
|
|
|
|
| compute_name | string | Имя компьюта |
|
|
|
|
|
|
|
|
|
|
### Описание структуры iotune
|
|
|
|
|
| Параметр | Тип | Описание |
|
|
|
|
|
| --- | --- | --- |
|
|
|
|
|
| read_bytes_sec | int | Кол-во байт для чтения в секунду |
|
|
|
|
|
| read_bytes_sec_max | int | Максимальное кол-во байт для чтения |
|
|
|
|
|
| read_iops_sec | int | Кол-во операций чтения io в секунду |
|
|
|
|
|
| read_iops_sec_max | int | Максимальное число io операций чтения |
|
|
|
|
|
| size_iops_sec | int | Размер io операций |
|
|
|
|
|
| total_bytes_sec | int | Общий размер байт в секунду |
|
|
|
|
|
| total_bytes_sec_max | int | Максимальный общий размер байт в секунду |
|
|
|
|
|
| total_iops_sec | int | Общее кол-во io операций в секунду |
|
|
|
|
|
| total_iops_sec_max | int | Максимальное общее кол-во io операций в секунду |
|
|
|
|
|
| write_bytes_sec | int | Кол-во байт для записи в секунду |
|
|
|
|
|
| write_bytes_sec_max | int | Максимальное кол-во байт для записи в секунду |
|
|
|
|
|
| write_iops_sec | int | Кол-во операций записи в секунду |
|
|
|
|
|
| write_iops_sec_max | int | Максимальное число операций записей |
|
|
|
|
|
|
|
|
|
|
### Описание структуры replication
|
|
|
|
|
| Параметр | Тип | Описание |
|
|
|
|
|
| --- | --- | --- |
|
|
|
|
|
| disk_id | int | id диска |
|
|
|
|
|
| pool_id | string | id пула |
|
|
|
|
|
| role | string | Роль диска (главный или реплика) |
|
|
|
|
|
| self_volume_id | string | id раздела |
|
|
|
|
|
| storage_id | int | id хранилища |
|
|
|
|
|
| volume_id | int | id раздела |
|
|
|
|
|
|
|
|
|
|
### Описание структуры snapshots
|
|
|
|
|
| Параметр | Тип | Описание |
|
|
|
|
|
| --- | --- | --- |
|
|
|
|
|
| guid | string | id снимка |
|
|
|
|
|
| label | string | Наименование снимка |
|
|
|
|
|
| res_id | string | Ссылка на снимок |
|
|
|
|
|
| snap_set_guid | string | Установленный id снимка |
|
|
|
|
|
| snap_set_time | int | Установленное время снимка |
|
|
|
|
|
| timestamp | int | Время снимка |
|
|
|
|
|
|
|
|
|
|
## Пример использования
|
|
|
|
|
Пример вызова _data source_ функции **dynamix_disk_list**:
|
|
|
|
|
```terraform
|
|
|
|
|
data "dynamix_disk_list" "dl" {
|
|
|
|
|
#фильтр по id диска
|
|
|
|
|
#опциональный параметр
|
|
|
|
|
#тип - целое число
|
|
|
|
|
#by_id = 100
|
|
|
|
|
|
|
|
|
|
#фильтр по имени диска
|
|
|
|
|
#опциональный параметр
|
|
|
|
|
#тип - строка
|
|
|
|
|
#name = "data_disk"
|
|
|
|
|
|
|
|
|
|
#фильтр по имени аккаунта
|
|
|
|
|
#опциональный параметр
|
|
|
|
|
#тип - строка
|
|
|
|
|
#account_name = "user"
|
|
|
|
|
|
|
|
|
|
#фильтр по максимальному размеру диска
|
|
|
|
|
#опциональный параметр
|
|
|
|
|
#тип - целое число
|
|
|
|
|
#disk_max_size = 100
|
|
|
|
|
|
|
|
|
|
#фильтр по статусу
|
|
|
|
|
#опциональный параметр
|
|
|
|
|
#тип - строка
|
|
|
|
|
#status = "ENABLED"
|
|
|
|
|
|
|
|
|
|
#фильтр по доступности иным пользователям
|
|
|
|
|
#опциональный параметр
|
|
|
|
|
#тип - булев
|
|
|
|
|
#shared = "false"
|
|
|
|
|
|
|
|
|
|
#id аккаунта для получения списка дисков
|
|
|
|
|
#опциональный параметр
|
|
|
|
|
#тип - целое число
|
|
|
|
|
#account_id = 11111
|
|
|
|
|
|
|
|
|
|
#тип диска
|
|
|
|
|
#опциональный параметр
|
|
|
|
|
#тип - строка
|
|
|
|
|
#возможные типы: "B" - boot_disk, "D" - data_disk
|
|
|
|
|
#type = "D"
|
|
|
|
|
|
|
|
|
|
#id SEP для получения списка дисков
|
|
|
|
|
#опциональный параметр
|
|
|
|
|
#тип - целое число
|
|
|
|
|
#sep_id = 11111
|
|
|
|
|
|
|
|
|
|
#фильтр по имени pool
|
|
|
|
|
#опциональный параметр
|
|
|
|
|
#тип - строка
|
|
|
|
|
#pool_name = "test"
|
|
|
|
|
|
|
|
|
|
#сортировка по одному из поддерживаемых полей
|
|
|
|
|
#опциональный параметр
|
|
|
|
|
#тип - строка
|
|
|
|
|
#формат - "+поле" по возрастанию / "-поле" по убыванию
|
|
|
|
|
#sort_by = "+name"
|
|
|
|
|
|
|
|
|
|
#кол-во страниц для вывода
|
|
|
|
|
#опциональный параметр
|
|
|
|
|
#тип - целое число
|
|
|
|
|
#page = 1
|
|
|
|
|
|
|
|
|
|
#размер страницы
|
|
|
|
|
#опциональный параметр
|
|
|
|
|
#тип - целое число
|
|
|
|
|
#size = 1
|
|
|
|
|
}
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
Данный пример подразумевает, что ранее по тексту tf-файла выполнена корректная инициализация провайдера (подробнее об инициализации Terraform провайдера DYNAMIX см. соответствующий [раздел](https://repository.basistech.ru/BASIS/terraform-provider-dynamix/src/branch/main/wiki/1.0.0/04.02-Инициализация-Terraform-провайдера-DYNAMIX.md)).
|
|
|
|
|
|
|
|
|
|
После успешного завершения такого вызова **dynamix_disk_list** в переменной `data.dynamix_disk_list.dl` будут сохранены возвращаемые значения.
|