4.9.6 and 4.10.2
This commit is contained in:
240
4.10.2/07.01.11-Resource_decort_account.md
Normal file
240
4.10.2/07.01.11-Resource_decort_account.md
Normal file
@@ -0,0 +1,240 @@
|
||||
_Resource_ функция **decort_account** служит для управления аккаунтами. Аккаунты на платформе позволяют создавать ресурсные группы, вычислительные мощности (computes), виртуальные сети, управлять ресурсами и так далее. Аккаунты создают пользователи (user). Все административное взаимодействие внутри платформы строится на аккаунтах.
|
||||
|
||||
**Начиная с версии провайдера 4.3.0 аккаунты могут создавать только администраторы площадок.**<br/>
|
||||
**Пользователи без административных прав могут только импортировать существующие аккаунты, используя следующую команду:**
|
||||
```bash
|
||||
terraform import decort_account.<наименование-ресурса> <ID-аккаунта>
|
||||
```
|
||||
После импорта конфигурации управление аккаунтом доступно в прежнем порядке.
|
||||
|
||||
## Аргументы
|
||||
_Resource_ функция **decort_account** принимает следующие аргументы:
|
||||
|
||||
| Аргумент | Тип | Обязательный | Описание |
|
||||
| --- | --- | :---: | --- |
|
||||
| account_name | string | :heavy_check_mark: | Имя аккаунта<br/>Используется при редактировании |
|
||||
| resource_limits | Struct{} [см. ниже](#описание-структуры-resource_limits_input) | :x: | Ресурсы аккаунта |
|
||||
| desc | string | Описание |
|
||||
| enable | bool | :x: | Флаг доступности аккаунта<br/>Используется при редактировании |
|
||||
| restore | bool | :x: | Флаг восстановления аккаунта<br/>Используется при редактировании |
|
||||
| users | []Struct{} [см. ниже](#описание-структуры-users) | :x: | Поле для того чтобы задать пользователей |
|
||||
| permanently | bool | :x: | Флаг удаления аккаунта<br/>Если выставлен в true, то аккаунт и все с ним связанное удаляется моментально<br/>Если false - то аккаунт попадает в "корзину", где хранится некоторое время. Из "корзины" аккаунт можно восстановить<br/>по умолчанию: false<br/>Используется при удалении |
|
||||
| default_zone_id | int | :x: | Зона по умолчанию |
|
||||
|
||||
### Описание структуры resource_limits_input
|
||||
| Аргумент | Тип | Обязательный | Описание |
|
||||
| --- | --- | :---: | --- |
|
||||
| cu_c | float | :x: | Количество ядер CPU |
|
||||
| cu_d | float | :x: | Размер диска |
|
||||
| cu_i | float | :x: | Количество публичных IP адресов |
|
||||
| cu_m | float | :x: | размер RAM |
|
||||
| cu_np | float | :x: | Хранилище траффика |
|
||||
| gpu_units | float | :x: | количество GPU ядер |
|
||||
|
||||
### Описание структуры users
|
||||
| Аргумент | Тип | Обязательный | Описание |
|
||||
| --- | --- | :---: | --- |
|
||||
| user_id | string | :heavy_check_mark: | ID пользователя(его имя) |
|
||||
| access_type | string | :heavy_check_mark: | Тип доступа пользователя. R - чтение, RCX - запись, ARCXDU - админ |
|
||||
|
||||
## Возвращаемые значения
|
||||
В случае успешного выполнения _resource_ функция **decort_account** возвращает в указанную при вызове переменную элемент, который состоит из следующих параметров:
|
||||
|
||||
| Параметр | Тип | Описание |
|
||||
| --- | --- | --- |
|
||||
| dc_location | string | dc location |
|
||||
| account_id | int | ID аккаунта |
|
||||
| account_name | string | Название аккаунта |
|
||||
| acl | []Struct{} [см. ниже](#описание-структуры-acl) | Более подробная информация об аккаунтах |
|
||||
| company | string | Название компании, которой принадлежит аккаунт |
|
||||
| companyurl | string | url-адрес компани |
|
||||
| compute_features | []string | Доступ к дополнительным функциям управления ВМ |
|
||||
| created_by | string | Пользователь - создателя аккаунта |
|
||||
| created_time | int | Время создания аккаунта |
|
||||
| deactivation_time | float | Время деактивации аккаунта |
|
||||
| deleted_by | string | Пользователь, удаливший аккаунт |
|
||||
| deleted_time | int | Время удаления аккаунта |
|
||||
| desc | string | Описание |
|
||||
| displayname | string | Отображаемое имя аккаунта |
|
||||
| guid | int | Внутренний guid аккаунта |
|
||||
| resource_limits | Struct{} [см. ниже](#описание-структуры-resource_limits) | Ограничения ресурсов |
|
||||
| send_access_emails | bool | Флаг, отправлять ли на указанную почту письмо о доступе |
|
||||
| cpu_allocation_parameter | string | Параметр выделения CPU |
|
||||
| cpu_allocation_ratio | float | Отношение выделения CPU |
|
||||
| status | string | Статус аккаунта |
|
||||
| updated_time | int | Время последнего обновления |
|
||||
| version | int | Версия аккаунта |
|
||||
| vins | []int | Список id виртуальных сетей |
|
||||
| vinses | []int | Список id виртуальных сетей |
|
||||
| computes | Struct{} [см .ниже](#описание-структуры-computes) | Информация о вычислительных мощностях |
|
||||
| machines | Struct{} [см .ниже](#описание-структуры-machines) | Информация о виртуальных машинах (устаревшее) |
|
||||
| default_zone_id | int | Зона по умолчанию |
|
||||
| zone_ids | []int | Зоны, доступные аккаунту |
|
||||
|
||||
### Описание структуры acl
|
||||
| Параметр | Тип | Описание |
|
||||
| --- | --- | --- |
|
||||
| can_be_deleted | bool | Может ли быть удален |
|
||||
| emails | []string | Список email |
|
||||
| explicit | bool | Видимость аккаунта |
|
||||
| guid | string | GUID |
|
||||
| right | string | Права |
|
||||
| status | string | Статус |
|
||||
| type | string | Тип |
|
||||
| user_group_id | string | ID группы юзеров |
|
||||
|
||||
### Описание структуры resource_limits
|
||||
| Параметр | Тип | Описание |
|
||||
| --- | --- | --- |
|
||||
| cu_c | float | Количество ядер CPU |
|
||||
| cu_d | float | Размер диска |
|
||||
| cu_dm | float | Использованный размер хранилища виртуального диска |
|
||||
| cu_i | float | Количество публичных IP адресов |
|
||||
| cu_m | float | размер RAM |
|
||||
| cu_np | float | Хранилище траффика |
|
||||
| gpu_units | float | количество GPU ядер |
|
||||
| storage_policy | [см. ниже](#описание-структуры-storage_policy) | Политики хранения |
|
||||
|
||||
### Описание структуры storage_policy
|
||||
| Параметр | Тип | Описание |
|
||||
| --- | --- | --- |
|
||||
| id | int | ID политики хранения |
|
||||
| limit | int | Ограничение ресурсов, Гб |
|
||||
|
||||
### Описание структуры computes
|
||||
| Параметр | Тип | Описание |
|
||||
| --- | --- | --- |
|
||||
| started | int | Количество запущенных ВМ |
|
||||
| stopped | int | Количество остановленных ВМ |
|
||||
|
||||
### Описание структуры machines
|
||||
| Параметр | Тип | Описание |
|
||||
| --- | --- | --- |
|
||||
| halted | int | Количество остановленных ВМ |
|
||||
| running | int | Количество запущенных ВМ |
|
||||
|
||||
## Пример использования
|
||||
Пример вызова _resource_ функции **decort_account**:
|
||||
```terraform
|
||||
resource "decort_account" "a" {
|
||||
#имя аккаунта
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
#используется при обновлении
|
||||
account_name = "new_my_account"
|
||||
|
||||
#описание
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#используется при обновлении
|
||||
#desc = "description"
|
||||
|
||||
#доступность аккаунта
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
#используется при обновлении
|
||||
#enable = true
|
||||
|
||||
#id аккаунта, позволяет сформировать .tfstate, если аккаунт имеется на платформе
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
#account_id = 11111
|
||||
|
||||
#отправлять ли на электронную почту письмо о доступе
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
#используется при обновлении
|
||||
#send_access_emails = true
|
||||
|
||||
#добавление/редактирование/удаление пользователей, к которым привязан аккаунт
|
||||
#опциональный параметр
|
||||
#используется при обновлении
|
||||
#тип - объект, кол-во таких объектов не ограничено
|
||||
#users {
|
||||
#id пользователя
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
#user_id = "username_2@decs3o"
|
||||
|
||||
#тип доступа пользователя
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
#возможные параметры:
|
||||
#R - чтение
|
||||
#RCX - запись
|
||||
#ARCXDU - админ
|
||||
#access_type = "R"
|
||||
#}
|
||||
|
||||
#users {
|
||||
#user_id = "username_1@decs3o"
|
||||
#access_type = "R"
|
||||
#}
|
||||
|
||||
#ограничение используемых ресурсов
|
||||
#опциональный параметр
|
||||
#тип - объект
|
||||
#используется при обновлении
|
||||
#resource_limits {
|
||||
#кол-во используемых ядер cpu
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
#если установлена -1 - кол-во неограничено
|
||||
#cu_c = 2
|
||||
|
||||
#кол-во используемой RAM, в МБ
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
#если установлена -1 - кол-во неограничено
|
||||
#cu_m = 1024
|
||||
|
||||
#размер дисков, в ГБ
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
#если установлена -1 - размер неограничено
|
||||
#cu_d = 23
|
||||
|
||||
#кол-во используемых публичных IP
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
#если установлена -1 - кол-во неограничено
|
||||
#cu_i = 2
|
||||
|
||||
#ограничения на кол-во передачи данных, в ГБ
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
#если установлена -1 - кол-во неограничено
|
||||
#cu_np = 2
|
||||
|
||||
#кол-во графических процессоров
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
#если установлена -1 - кол-во неограничено
|
||||
#gpu_units = 2
|
||||
#}
|
||||
|
||||
#восстановление аккаунта
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
#применяется к удаленным аккаунтам
|
||||
#по умолчанию - false
|
||||
#restore = false
|
||||
|
||||
#флаг для удаления аккаунта, без возможности восстановления
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
#используется при удалении
|
||||
#по умолчанию - false
|
||||
#permanently = true
|
||||
|
||||
#зона по умолчанию для аккаунта
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
#используется при обновлении
|
||||
#default_zone_id = 1111
|
||||
}
|
||||
```
|
||||
|
||||
Данный пример подразумевает, что ранее по тексту tf-файла выполнена корректная инициализация провайдера (подробнее об инициализации Terraform провайдера DECORT см. соответствующий [раздел](https://repository.basistech.ru/BASIS/wiki-terraform-provider-decort/src/branch/main/4.10.2/04.02-Инициализация-Terraform-провайдера-DECORT.md)).
|
||||
|
||||
После успешного завершения такого вызова **decort_account** в переменной `decort_account.a` будут сохранены возвращаемые значения.
|
||||
Reference in New Issue
Block a user